首页  >  文章  >  Java  >  Java 的 int 和 Integer:原始与对象 — 有什么区别?

Java 的 int 和 Integer:原始与对象 — 有什么区别?

Barbara Streisand
Barbara Streisand原创
2024-11-24 11:27:11403浏览

Java's int and Integer: Primitive vs. Object—What's the Difference?

原始与对象:理解 Java 中的 Integer 和 int

在 Java 中,int 和 Integer 之间的区别源于它们的基本性质。

int:原始数据Type

int 是直接保存数值的原始数据类型。它占用固定的内存空间,存储整数的二进制表示。

Integer:一个包装类

Integer,另一方面,是一个包装类一个 int 值。它的行为就像 Java 中的任何其他对象一样,具有自己的方法和字段。整数变量存储对整数对象的引用。

实例化与赋值

显示的代码突出了这种区别:

int n = 9; // Assigns the value 9 to the primitive variable n

在这种情况下, n 直接存储整数值9.

// This code won't compile because Integer expects a reference to an object
Integer n = 9;

方法调用

像 Integer 这样的包装类提供了允许对包装值进行操作的方法。例如:

Integer.parseInt("1") // Parses a string into an int (returns an int)

由于 int 不是类,因此它没有像 parseInt 这样的方法。

// This code won't compile
int.parseInt("1")

自动装箱和拆箱

Java 5 引入了自动装箱和拆箱,可自动在原始类型和包装类型之间进行转换。这种便利可能会引入微妙的错误和性能问题,因此建议显式转换。

包装类层次结构

Java 中的所有基本类型都有等效的包装类: Byte (byte )、Short(短整型)、Integer(整型)、Long(长整型)、Boolean(布尔型)、Character(字符型)、Float(浮点型) (float) 和 Double (double)。

包装类扩展了 Object 类,允许它们在需要对象引用的集合和泛型中使用。

以上是Java 的 int 和 Integer:原始与对象 — 有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn