Java/Suckage
From charlesreid1
An enumeration of the things I don't like about Java.
typing in general
Not necessarily Java-specific, but using a typed language is like wearing a stuffy outfit with a too-tight collar - the compiler.
generic object templating
Trying to do one of the simplest operations imaginable: given a set of integers, find a duplicate.
Link to code: https://git.charlesreid1.com/cs/java/src/master/arrays/find-dupes/FindOne.java
To implement one of the solutions, you have to take the integers passed in and use them to access another array.
Oh, no. Java will have none of that.
- Problems begin with just the very act of initializing data. This is your first warning.
- Can we do Arrays.asList(1,2,3,3)? Nope.
- Also, we can use generics <T> - but, not in a static context.
- Also, we can define static methods that take a generic type <T>. But no arrays T[].
- To way to initialize an all-zeros list of Integers.
- No way to convert any primitive types to wrappers in one go.
- No way to convert from PT int[] to Object type Integer[]
Java is like the language that keeps giving, and then saying, "but there's a catch."