问题标签 [autoboxing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
6490 浏览

java - 为什么将自动装箱标记为警告?

我知道自动取消装箱应该小心,因为正在取消装箱的引用可以为空。为什么自动装箱也被标记为警告?我在这里遗漏了一些陷阱吗?

0 投票
6 回答
967 浏览

java - Java中的自动装箱

以下表达式如何评估?

学生班:

并以某种方式:

0 投票
2 回答
224 浏览

java - Java 如何比较两个包装器变量?

我有两个应该比较的变量:

在这种情况下,java 将使用自动装箱或比较两个对象的引用?

0 投票
2 回答
7515 浏览

java - Object.intValue() 的奇怪行为

我正在努力解决一个问题,我不明白为什么它不起作用。如何通过变量传递double obj并转换为int
为什么它在顶部代码片段中不起作用,但它在该行下方的底部代码片段中起作用?

唯一的区别似乎是添加了一个额外的变量,它也被键入为double?

0 投票
2 回答
499 浏览

java - 自动装箱规则,引擎盖下隐藏着什么?

我遇到了一个非常奇怪的行为,后来发现它是 java 规范的一部分。让我把上述帖子中的相关代码

这与字符串文字池非常相似,但有一个例外,它有一个限制。让我再次引用 Jon Skeet 对前面提到的帖子的回复。

如果被装箱的值 p 是真、假、一个字节、一个在 \u0000 到 \u007f 范围内的字符,或者一个介于 -128 和 127 之间的 int 或短数字,则令 r1 和 r2 为任意两次装箱转换的结果p。r1 == r2 总是如此。

现在我的问题是,既然我们对字符串文字池没有限制,为什么其他类型不一样?没有这个的设计/性能考虑是什么?有什么办法可以配置吗?

0 投票
3 回答
869 浏览

java - 对象列表。具有整数条目的操作

该列表可能同时包含整数和字符串值。在这种情况下,我应该创建对象列表,对吗?

如何使用列表的整数条目执行简单的算术运算?

0 投票
1 回答
1484 浏览

java - Java null 到 int 条件运算符问题

可能重复:
Java 中棘手的三元运算符 - 自动装箱

我们知道int roomCode = null;编译器不允许这样做。

那么为什么代码 1 没有给出编译器错误,而代码 2 给出了。

代码 1:

代码 2:

0 投票
4 回答
1097 浏览

java - 展开此自动装箱说明

我问:

自动装箱/拆箱是在运行时(JVM)还是在编译时(编译器)完成?

我收到了这个答案:

自动装箱是通过编译器在代码中插入方法调用和强制转换来实现的。这些调用和强制转换在运行时处理。

请更详细地解释。

0 投票
2 回答
343 浏览

scala - Scala的行为/理解数字类型的隐式转换?

我试图了解 Scala for-loop 隐式框/拆箱“数字”类型的行为。为什么这两个第一个失败而其余的都不失败?

1) 失败:

scala> for (i:Long <- 0 to 10000000L) {}

2> 失败:

scala> for (i <- 0 to 10000000L) {}

3)作品:

scala> for (i:Long <- 0L to 10000000L) {}

4)作品:

scala> for (i <- 0L to 10000000L) {}

0 投票
2 回答
524 浏览

java - 将 long 转换为 int 是否比自动装箱 long 到 Long 便宜?

我有一堆使用ID 号Thingy跟踪的对象。long由于我无法保证 ID 序列,因此我将它们保存在HashMap<Long, Thingy>随机访问中。然而,在 Android 中,他们有一个非常好的类SparseArray,他们声称它比我HashMap使用它的方式更快。也许最值得注意的是,它没有自动装箱税。不幸的是,键是int,不是long

我的longID 值如此之大,以至于我不担心超出int本世纪任何时候的范围。对于我的操作来说,从long转换到intSparseArray优化会比自动装箱更便宜吗?我的直觉说是的,但我想要一些额外的输入。longLongHashMap