HiveBrain v1.2.0
Get Started
← Back to all entries
patternjavaCritical

Converting array to list in Java

Submitted by: @import:stackoverflow-api··
0
Viewed 0 times
javaarraylistconverting

Problem

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[] numbers = new int[] { 1, 2, 3 };
Arrays.asList(numbers)


  • on 1.4.2 returns a list containing the elements 1, 2, 3



  • on 1.5.0+ returns a list containing the array 'numbers'



In many cases it should be easy to detect, but sometimes it can slip unnoticed:

Assert.assertTrue(Arrays.asList(numbers).indexOf(4) == -1);

Solution

In your example, it is because you can't have a List of a primitive type. In other words, List is not possible.

You can, however, have a List using the Integer class that wraps the int primitive. Convert your array to a List with the Arrays.asList utility method.

Integer[] numbers = new Integer[] { 1, 2, 3 };
List list = Arrays.asList(numbers);


See this code run live at IdeOne.com.

Code Snippets

Integer[] numbers = new Integer[] { 1, 2, 3 };
List<Integer> list = Arrays.asList(numbers);

Context

Stack Overflow Q#2607289, score: 1750

Revisions (0)

No revisions yet.