commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Henri Yandell (JIRA)" <>
Subject [jira] [Commented] (LANG-848) Improve with a CharSequence... version
Date Thu, 17 Oct 2013 05:24:43 GMT


Henri Yandell commented on LANG-848:

My main thought is that the JVM should auto-convert an Iterable to an Object[] for varargs

Failing that, I think we should have an ArrayUtils.iteratorToArray() method. 

    public static E[] iteratorToArray(Iterator<E> iterator);

That would allow for StringUtils.isAnyBlank( ArrayUtils.iteratorToArray(somecharacterList.iterator())

I'm not sure if I'm playing too fast and loose with the generics there without trying it :)
I think we need the varargs versions of methods, but I'm not convinced by the need for Iterable.
It increases the code and typically our code isn't stream based - ie: people in restricted
memory situations can create custom versions of the function they want.

> Improve with a CharSequence... version
> ---------------------------------------------------------------
>                 Key: LANG-848
>                 URL:
>             Project: Commons Lang
>          Issue Type: Improvement
>          Components: lang.*
>    Affects Versions: 3.1
>            Reporter: Alexander Muthmann
>             Fix For: 3.2
> Currently it's only possible to compare a single CharSequence per is(Not)Blank/is(Not)Empty
> This should be changed to support multiple CharSequences in a single call.
> {code}
> if(StringUtils.isNotBlank(foo) && StringUtils.isNotBlank(bar) && ...)
> {code}
> could be changed to
> {code}
> if(StringUtils.isNotBlank(foo, bar, ...)
> {code}
> As there are two possible ways to combine the results (AND and OR), it'd be necessary
to create multiple methods.
> {code}
> isAnyBlank(CharSequence... cs)
> isNoneBlank(CharSequence... cs)
> isAnyEmpty(CharSequence... cs)
> isNoneEmpty(CharSequence... cs)
> {code}
> I could implement those methods and contribute them via github if there is any interest
from project's side. 

This message was sent by Atlassian JIRA

View raw message