commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörg Schaible <joerg.schai...@bpm-inspire.com>
Subject Re: [configuration2]: AbstractConfiguration::getArray
Date Thu, 28 Apr 2016 14:34:32 GMT
Chas Honton wrote:

> Try casting Object[] to long[]. The compiler and the runtime will
> complain.

It is not about a cast, it's about returning the proper object. And it has 
nothing to do with primitives, because you cannot cast e.g. Object[] to 
String[] either.

> 
>> On Apr 27, 2016, at 11:59 PM, Jörg Schaible
>> <joerg.schaible@bpm-inspire.com> wrote:
>> 
>> Hi Oliver,
>> 
>> Oliver Heger wrote:
>> 
>>> Hi Rainer,
>>> 
>>>> Am 27.04.2016 um 21:22 schrieb Rainer Hirschmiller:
>>>> Hi.
>>>> 
>>>> I wonder why AbstractConfiguration::getArray(cls, key) returns a single
>>>> object, not an array of objects? Can somebody explain why the caller
>>>> have to make an explicit cast?
>>>> 
>>>> e.g.
>>>> AbstractConfiguration &configuration = ....;
>>>> 
>>>> Object obj = configuration.getArray(String.class, "key);
>>>> // expected Object[] obj = configuration.getArray(String.class, "key);
>>> 
>>> the explanation can be found in the Javadocs of the ConversionHandler
>>> interface which is used behind the scenes. Citing from the docs of the
>>> toArray() method:
>>> 
>>> "Note that the result type of this method is Object; because this method
>>> can also produce arrays of a primitive type the return type Object[]
>>> cannot be used."
>> 
>> That does not explain, why the method is not declared using generics:
>> 
>>  public <T> T[] toArray(Class<T> cls, String key);
>> 
>> Cheers,
>> Jörg
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
>> For additional commands, e-mail: user-help@commons.apache.org
>>



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


Mime
View raw message