问题标签 [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.
java - Java中条件表达式中的错误行为
一个简单的表达:
val是什么类型?好吧,从逻辑上讲,val应该是一个Long值为1的对象。但是 Java 认为val是一个Double,其值为1.0。
自动装箱不需要任何东西
结果具有相同的行为。
只是为了澄清:
产生正确的String。
谁能解释我为什么他们这样定义?对我来说,这似乎是一个非常糟糕的设计或实际上是一个错误。
java - 为什么自动装箱/拆箱在这里失败?
在下面的程序中,结果被0.0
认为小于Double.MIN_VALUE
。为什么?
我们有一个解决方案(Doubles
仅使用和使用compareTo
),我想了解为什么在这里拆箱失败。
java - 使用 Tuple(double,int,int) 的数组列表比两个数组列表慢
使用 Tuple(double,int,int) 的数组列表是否比三个单独的数组列表慢?我想避免创建大量的 Tuple 对象,但是方法 2 是否通过自动装箱创建对象?
java - 通过传入单个元素原始数组来避免装箱
我正在使用一个将 Object 类型作为其输入的接口。这对我来说很不幸,因为我有时需要通过接口传递原始数据。这当然迫使我装箱。
分析表明该区域是代码中的热点。因此,我正在探索使这个领域更快的替代方案。
我今天对此的一个想法是预先分配一个静态原始数组,并将原始值存储在其中,然后传递数组(然后在接口的实现中,从数组中获取双精度值。
我写了一些代码来测试这个。对于相当高的值(1000 万),我看到数组方法明显更快。随着我增加测试的迭代次数,两者会收敛。
我想知道以前是否有人考虑过这种方法,以及是否有任何关于如何很好地进行基准测试的建议。
示例代码:
对...
谢谢!RB
java - 数字提升和平等?
可能重复:
包装类和 == 运算符
我有一个来自朋友的谜题。就这个:
结果将是 FALSE。这是正确的。但是当将 i,y 值替换为 10 时,结果为 TRUE。
根据我的阅读,当运算符 == 应用于引用变量时,它将测试它们是否引用同一个对象。我不知道为什么会出现这样的结果,但我猜是数字提升的问题。我真的需要帮助。感谢每一个人。
java - 扩展和装箱 Java 原语
扩展和装箱 Java 原语。
我知道不可能将包装类从一个扩展到另一个,因为它们不是来自同一个继承树。为什么不能将一个基元扩展为另一种基元类型并自动装箱扩展的基元?
鉴于可以将字节参数传递给需要 int 的方法,为什么不能将以下示例中的字节扩展为 int,然后将其装箱为 Integer?
在上面的示例中,goInt(b)
编译器接受但goInteger(b)
被拒绝。
java - 为什么不为泛型自动装箱 Java 原始类型?
Java 不允许在通用数据结构中使用原始类型。例如,不允许使用 ArrayList<int>。原因是,原始类型不能直接转换为 Object。然而,Java 1.5 确实支持自动装箱,并且包装类在通用数据结构中工作。那么为什么编译器不能将它自动装箱到 ArrayList<Integer> 呢?还有其他原因导致这不起作用吗?
java - 为什么 Integer 和 int 可以互换使用?
我很困惑为什么 Integer 和 int 可以在 Java 中互换使用,即使一个是原始类型而另一个是对象?
例如:
或者