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

> On Apr 27, 2016, at 11:59 PM, Jörg Schaible <joerg.schai...@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-unsubscr...@commons.apache.org
> For additional commands, e-mail: user-h...@commons.apache.org
> 


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

Reply via email to