Java Vector or ArrayList for Primitives
There is unfortunately no such class, at least in the Java API. There is the Primitive Collections for Java 3rd-party product.
It's pretty dangerous to use auto-boxing together with existing collection classes (in particular List
implementations). For example:
List<Integer> l = new ArrayList<Integer>();
l.add(4);
l.remove(4); //will throw ArrayIndexOutOfBoundsException
l.remove(new Integer(4)); //what you probably intended!
And it is also a common source of mysterious NullPointerExceptions
accessing (perhaps via a Map
):
Map<String, Integer> m = new HashMap<String, Integer>();
m.put("Hello", 5);
int i = m.get("Helo Misspelt"); //will throw a NullPointerException
http://trove4j.sourceforge.net/
The Trove library provides high speed regular and primitive collections for Java.
Note that because Trove uses primitives, the types it defines do not implement the java.util collections interfaces.
(LGPL license)