How do I convert an array to a list in Java?
I used the Arrays.asList()
but the behavior (and signature) somehow changed from Java SE 1.4.2 (docs now in archive) to 8 and most snippets I found on the web use the 1.4.2 behaviour.
For example:
int[] spam = new int[] { 1, 2, 3 }; Arrays.asList(spam)
In many cases it should be easy to detect, but sometimes it can slip unnoticed:
Assert.assertTrue(Arrays.asList(spam).indexOf(4) == -1);
The asList() method of java. util. Arrays class is used to return a fixed-size list backed by the specified array. This method acts as a bridge between array-based and collection-based APIs, in combination with Collection. toArray().
To convert ArrayList to array in Java, we can use the toArray(T[] a) method of the ArrayList class. It will return an array containing all of the elements in this list in the proper order (from first to last element.) Here's a short example to convert an ArrayList of integers, numbersList , to int array.
In your example, it is because you can't have a List of a primitive type. In other words, List<int>
is not possible.
You can, however, have a List<Integer>
using the Integer
class that wraps the int
primitive. Convert your array to a List
with the Arrays.asList
utility method.
Integer[] spam = new Integer[] { 1, 2, 3 }; List<Integer> list = Arrays.asList(spam);
See this code run live at IdeOne.com.
In Java 8, you can use streams:
int[] spam = new int[] { 1, 2, 3 }; Arrays.stream(spam) .boxed() .collect(Collectors.toList());
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With