问题标签 [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 投票
1 回答
182 浏览

c# - C#测试中字符串和字符串的等价性

可能重复:
C# 中的字符串与字符串

我在阅读的 C# 代码中有一个测试:

我想知道这是否严格等同于:

或者如果 C# 自动装箱的某些深奥行为可能导致这些测试的行为不同。

0 投票
6 回答
301 浏览

java - 分配数字时出现 NullPointerException

当我执行以下代码时发生了一件奇怪的事情:

有时我在分配行的日志中看到 NullPointerException,但我不明白为什么会发生这种情况。任何想法?

0 投票
5 回答
5842 浏览

java - 在 Java 中应该避免自动装箱吗?

在某些情况下,方法需要原始类型double,而您将Double对象作为参数传递。

由于编译器将传递的对象拆箱,这会增加内存使用量还是降低性能?

0 投票
3 回答
2621 浏览

java - 在 Java 7 中使用方法重载时,为什么自动装箱不推翻可变参数?

我们的 Java 项目中有一个 LogManager 类,如下所示:

在 Debian 下使用OpenJDK 6编译项目时,一切正常。使用OpenJDK 7时,构建(使用 ant 完成)会产生以下错误并且构建失败:

只要1没有被自动装箱,方法调用就应该是明确的,因为1是一个 int 并且不能向上转换为 Object。那么为什么自动装箱不在这里推翻可变参数呢?

无论是否安装了 OpenJDK 6,Eclipse(使用来自 eclipse.org 的 tar.gz 安装)都会编译它。

非常感谢你的帮助!

编辑:

编译器source="1.6"target="1.6"这两种情况下都可以选择。Eclipse 编译说明仅作为注释。

0 投票
3 回答
4343 浏览

scala - 如何匹配“布尔”类型和“布尔”类型的类?

考虑以下代码:

我想在标记的行retType中匹配。如何自动将装箱和未装箱类型的类等同起来?boolType(*)

[编辑:]我不认为这是最好的解决方案,但一种方法是进行比较 retType.getCanonicalName == "boolean"

[Edit2:] 上下文:我正在编写一些代码来自动调用基于表单名称的方法。代码应该从方法中提取返回类型等并返回适当的答案。例如,使用以下代码段:

0 投票
2 回答
4249 浏览

scala - 如何在纯 Scala 中表示盒装 Double?

在 Scala 中,双精度数有 2 种表示形式,一种是AnyVal,另一种是AnyRef。在 JVM 上,它们分别映射到原语double和类java.lang.Double

现在在 JVM 以外的平台上会发生什么?我可以使用Scala.Double原语,但我如何指定我想要引用装箱的 Double 而不指定java.lang.Double


[上下文 - 留下来理解 Thomasz 的回答,但不是根本问题。

我有一个 Double 我想用 Spring 注入到 Wicket 组件中:

如果我scala.Double如上所述指定类型,则注入器将失败,因为它只能注入对象。

如果我指定java.lang.Double为字段的类型,一切都很好

但是我试图减少对回退到 Java API 的依赖,那么如果没有它,我该如何表示盒装Double呢?]

0 投票
4 回答
179 浏览

java - int vs int[] 区别 - 泛型内部的自动装箱?

看这段代码:

AFAIK,java泛型不支持原始类型,那么int[]编译如何?在这里如何进行自动装箱?

0 投票
2 回答
1398 浏览

ios - iOS5 Core Data 和 NSNumber 是否有自动装箱/拆箱?

来自 Java,我非常习惯于autoboxing,其中 int 会在需要时自动包装为 Integer ,并且 Integer 可能会被拆箱为原语。在 iOS5 中我可以依赖类似的东西吗?

目前,我正在使用核心数据,并且需要大量输入才能继续输入

有什么方法可以直接在方程式等中使用 NSNumber 吗?例如:

此外,每次我需要在核心数据中重新分配一个数字时,我都会像这样创建一个新对象。

有没有更好的方法来改变已经创建的 NSNumber 的值?10 年后,我可以使用哪些漂亮的捷径将自己从腕管中拯救出来?

谢谢!

0 投票
9 回答
8131 浏览

java - == 如何比较内存位置?

我被告知永远不要使用==字符串,而是用于其他所有内容,因为.equals会比较值而不是对象的实例。(我理解的区别)。

根据某些网站,==比较内存位置?

我不明白的是,如果您将一个整数与另一个进行比较,为什么要比较内存位置,或者这只是用于字符串?

如果您将 int 3 与 int 4 进行比较,显然它不会位于同一内存位置,但是如果您将 int 4 与 int 4 进行比较,这是否意味着所有值为 4 的整数都存储在同一个内存位置内存位置?

0 投票
8 回答
16516 浏览

java - 使用三元运算符将 null 作为 int 返回,但 if 语句不允许

让我们看一下以下代码段中的简单 Java 代码:

在这个最简单的 Java 代码中,temp()即使函数的返回类型是int,并且我们试图返回值null(通过语句return true ? null : 0;),该方法也不会发出编译器错误。编译时,这显然会导致运行时异常NullPointerException

但是,如果我们用一个if语句(如在same()方法中)来表示三元运算符,这似乎也是错误的,这确实会引发编译时错误!为什么?