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