https://stackoverflow.com/questions/2607289/converting-array-to-list-in-java
【问题】
在Java中,将数组转换为列表
【描述】
在Java中,如何将数组转换为列表?我使用了Arrays.asList()
,但是行为(和签名)以某种方式从Java SE 1.4.2(现在归档中的文档)变为8,我在网上找到的大多数代码段使用1.4.2行为。
例如:
int[] spam = new int[] { 1, 2, 3 };
Arrays.asList(spam)
- 在1.4.2上返回一个包含元素1,2,3的列表
- 在1.5.0+上返回包含数组的列表
在许多情况下,它应该很容易被发现,但有时它可能会被忽视:
Assert.assertTrue(Arrays.asList(spam).indexOf(4) == -1);
【回答】
在你的示例中,这是因为您不能拥有基本类型的List。换句话说,List <int>
是不可能的。
但是,您可以使用int的包装Integer
类来创建List <Integer>
之后使用Arrays.asList
方法将数组转换为List
。
Integer[] spam = new Integer[] { 1, 2, 3 };
List<Integer> list = Arrays.asList(spam);