Arrays.asList() 难题:了解其局限性
在 Java 中,Arrays.asList 方法提供了一种转换数组的便捷方法到一个列表中。但是,在处理原始数组(例如 float[])时,我们会遇到异常。
此代码片段按预期工作,创建了一个 Integer 对象列表:
List<integer> list = Arrays.asList(1,2,3,4,5);</integer>
在另一方面,以下代码无法创建 List
int[] ints = new int[] {1,2,3,4,5}; List<integer> list = Arrays.asList(ints);</integer>
相反,输出是List
- 为什么会发生这种情况?
Arrays.asList 接受一个 varargs 参数,它是数组的语法简写。但是,在基元的情况下,它将整个数组视为单个元素,而不是每个基元值。这会产生一个包含基元数组的 List,而不是包装为对象的单个基元值。
- 可以更正吗?
不幸的是,没有直接的方法将 int[] 转换为 List
- 为什么自动装箱在这里不起作用?
自动装箱通常会转换基元到其相应的包装对象中以在对象集合中使用。但是,当应用于基元数组时,它不会按元素发生。此限制源于 Java 不支持数组自动装箱这一事实。
以上是为什么 Java 中的 Arrays.asList() 不自动装箱原始数组?的详细内容。更多信息请关注PHP中文网其他相关文章!
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前By尊渡假赌尊渡假赌尊渡假赌
刺客信条阴影:贝壳谜语解决方案
3 周前ByDDD
Windows 11 KB5054979中的新功能以及如何解决更新问题
2 周前ByDDD
威尔R.E.P.O.有交叉游戏吗?
1 个月前By尊渡假赌尊渡假赌尊渡假赌

热工具

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

记事本++7.3.1
好用且免费的代码编辑器