4 ms·
> The List<Object> cannot hold int, double etc. It can only hold the boxed variants At this point, don't you think you're being more than a little pedantic to
by t-writescode 6y ago
> The List<Object> cannot hold int, double etc. It can only hold the boxed variants
At this point, don't you think you're being more than a little pedantic to the point of having a heterogeneous list?
- rowanG077 6y agoNo I don't think so. The main requirement of a heterogeneous list is that it can hold any type. In addition in a statically typed language I'd say to truly qualify as a heterogeneous list it should actually be typesafe. Java fullfills neither requirement.
- inshadows 6y agoIt can hold int via Integer. What's your point?
- gugagore 6y agoSeems like the rub is "The main requirement of a heterogeneous list is that it can hold any type." when I think I would colloquially say, and use as a working definition, that they need to hold different types. Also the rub is that "type" means two things: what a variable can have OR a class (that inherits from `Object`). There isn't in my opinion a good reason for this design of Java's type system: https://stackoverflow.com/questions/14477743/why-are-there-primitive-datatype-in-java https://stackoverflow.com/questions/14477743/why-are-there-p...
- t-writescode 6y agoBut ... is there any functional difference? Like, chances are, the individual is going to say that Ruby provides that power; but, by the time you've reached Ruby levels of abstraction, the odds of any argument about performance and data marshalling go out the window. It's a difference without a meaning, as far as I can tell.