【发布时间】:2020-12-08 05:21:05
【问题描述】:
我在这里看到的大多数示例都解释了如何将基元数组转换为 ArrayList。
是否可以使用 stream() 将非基元数组转换为 ArrayList?
如果没有,是否有一个实用程序可以做同样的事情?
【问题讨论】:
-
有可能,只需搜索您的特定类型,您也会在 Stackoverflow 上找到相关的重复项。
-
这能回答你的问题吗? Converting array to list in Java
-
一般 SO 问题:这确实是“将数组转换为 Java 中的列表”的副本。但是,该答案的获胜答案有 1400 票,而且现在是 2020 年,因此误导它几乎是错误的(Arrays.asList 有缺点,例如半不可变和半可变,给您提供了两者中最差的属性,现在有更干净的 List.of)。那么如何解决这个问题呢?找到 1400 人投反对票?似乎对回答者不公平,因为在他们写它的时候,那是体面的。
-
@rzwitserloot 这些缺点不会使答案无效。如果您想要一个无复制的解决方案,
Arrays.asList(…)仍然是解决方案,其局限性是不可避免的。当然,如果该答案记录了这些问题,那就太好了。但请注意,这个答案实际上是在回答一个不同的问题,即关于将int[]转换为List的前提是错误的前提是使用Arrays.asList在 Java 5 之前有效。 -
@rzwitserloot 这正是我所说的。该链接问题的前提是错误……