I've got a HashSet<Integer>
with a bunch of Integers
in it. I want to turn it into an array, but calling
hashset.toArray();
returns an Object[]
. Is there a better way to cast it to an array of int
other than iterating through every element manually? I want to pass the array to
void doSomething(int[] arr)
which won't accept the Object[] array, even if I try casting it like
doSomething((int[]) hashSet.toArray());
Apache's ArrayUtils has this (it still iterates behind the scenes):
doSomething(ArrayUtils.toPrimitive(hashset.toArray()));
They're always a good place to check for things like this.