Converting array to list in Java(在Java中将数组转换为列表)
问题描述
如何在 Java 中将数组转换为列表?
How do I convert an array to a list in Java?
我使用了 Arrays.asList() 但行为(和签名)不知何故从 Java SE 1.4.2(文档现在存档)到 8 和我在网上找到的大多数片段都使用 1.4.2 行为.
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.
例如:
int[] spam = new int[] { 1, 2, 3 };
Arrays.asList(spam)
- 在 1.4.2 上返回一个包含元素 1、2、3 的列表
- 在 1.5.0+ 上返回一个包含数组 spam 的列表
在许多情况下,它应该很容易被发现,但有时它可能会被忽视:
In many cases it should be easy to detect, but sometimes it can slip unnoticed:
Assert.assertTrue(Arrays.asList(spam).indexOf(4) == -1);
推荐答案
在您的示例中,这是因为您不能拥有原始类型的 List.换句话说,List<int>
是不可能的.
In your example, it is because you can't have a List of a primitive type. In other words, List<int>
is not possible.
但是,您可以使用 List<Integer>java.base/java/lang/Integer.html" rel="noreferrer">Integer
类,它包装了 int
原语.将您的数组转换为 List
与 Arrays.asList
实用方法.
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);
查看此在 IdeOne.com 上运行的代码.
这篇关于在Java中将数组转换为列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在Java中将数组转换为列表
基础教程推荐
- 如何使用 Stream 在集合中拆分奇数和偶数以及两者的总和 2022-01-01
- 由于对所需库 rt.jar 的限制,对类的访问限制? 2022-01-01
- 如何在不安装整个 WTP 包的情况下将 Tomcat 8 添加到 Eclipse Kepler 2022-01-01
- 首次使用 Hadoop,MapReduce Job 不运行 Reduce Phase 2022-01-01
- 如何使用 Eclipse 检查调试符号状态? 2022-01-01
- 如何强制对超级方法进行多态调用? 2022-01-01
- 在螺旋中写一个字符串 2022-01-01
- Spring Boot Freemarker从2.2.0升级失败 2022-01-01
- Java 中保存最后 N 个元素的大小受限队列 2022-01-01
- 如何对 HashSet 进行排序? 2022-01-01