Java 中的自动装箱是什么? 有例子

已发表: 2023-01-28

在当今世界,Java 是编写 Android 应用程序脚本的著名选择。 它还在机器学习环境、云应用程序和物联网技术中发现了广泛的需求。 开发人员需要对 Java 编程的最新趋势有透彻的了解。 Java 开发人员的有利可图的职业前景是有保障的,因为该语言在企业中占有一席之地。 Java不仅是安卓移动应用市场领先的面向对象语言,在后端市场领域也是领先的。

目录

Java 中自动装箱的基础知识:

在编写程序脚本时,大多数编程语言都使用原始数据类型。 但是,在Java等面向对象的编程语言中,原始数据类型在某些场景下效果并不好,在这个领域上是达不到要求的。 为了克服原始数据类型的限制,使用了包装器。 这种现象称为自动装箱。 让我们在后续部分中更多地讨论 Java 中的自动装箱。

查看我们的免费技术课程,在竞争中脱颖而出。

探索我们的热门软件工程课程

LJMU & IIITB 计算机科学硕士 加州理工学院 CTME 网络安全证书课程
全栈开发训练营 区块链PG项目
全栈开发中的执行 PG 计划
在下面查看我们所有的课程
软件工程课程

自动装箱和自动拆箱:

自动装箱是将原始值转换为包装类对象的过程。 例如,将 int 数据类型转换为整数类。 如果原始值是: 自动装箱功能由 Java 编译器执行:

  • 分配给相应包装类的变量。
  • 作为参数传递给使用相应包装类的对象的方法。

自动装箱与自动装箱功能相反。 将包装器类型对象转换为其各自的原始值称为拆箱。 让我们考虑一个将 Integer 对象转换为 int 数据类型的示例。 Java 编译器在包装类对象为以下情况时执行拆箱:

  • 分配了相应原始类型的变量。
  • 作为参数传递给需要相应原始类型值的方法。

从世界一流大学在线学习软件开发课程。 获得执行 PG 课程、高级证书课程或硕士课程,以快速推进您的职业生涯。

需求软件开发技能

JavaScript 课程 核心 Java 课程 数据结构课程
Node.js 课程 课程 全栈开发课程
NFT课程 开发运营课程 大数据课程
React.js 课程 网络安全课程 云计算课程
数据库设计课程 Python 课程 加密货币课程

详细自动装箱:

术语装箱和自动装箱在许多情况下交替使用来描述相同的概念。 但是,这两个术语之间存在细微差别。 术语“装箱”是指包装原始数据类型以形成对象。 让我们考虑一个例子来理解这个概念。 考虑下面编写的 Java 代码语句。

int FirstNumber = 1;

在此语句中,变量“FirstNumber”是原始的 int 数据类型。 可以使用下面的语句将其转换为对象。

整数 SecondNumber = new Integer(2);

上述语句中的变量 SecondNumber 不是原始 int 数据类型。 相反,它是一个 Integer 对象。 这种将原始数据类型转换为对象的过程称为装箱。 执行此任务的最简单方法是开发一个包含单个 int 数据类型属性的类。 一个 int 类型值的构造函数被分配给类属性。 有几种方法用于操作 int 值。 Java 中的包装器类可用于将其他数据类型转换为对象。

自动装箱是编译器自动执行的功能,无需明确提及。

MyList.add(Integer.valueOf(i));

这是编译器添加到我们程序中的行。

在上面的代码语句中,在提到方法 valueOf() 之前指定了类“Integer”的名称,因为 valueOf() 是一个静态方法。

阅读我们与软件开发相关的热门文章

如何在 Java 中实现数据抽象? Java中的内部类是什么? Java 标识符:定义、语法和示例
通过示例了解 OOPS 中的封装 C 中的命令行参数解释 2022 年云计算的十大特点
Java 中的多态性:概念、类型、特征和示例 Java 中的包以及如何使用它们? Git 初学者教程:从零开始学习 Git

什么是 Java 中的拆箱?

现在我们已经了解了将原始数据类型转换为对象的过程,让我们看看执行装箱的反向功能的过程。 拆箱,如前所述,是指将包装类类型的对象转换为其原始数据类型的过程。

当拆箱过程由编译器自动执行而没有在程序中明确提及时,称为自动拆箱。 让我们考虑下面显示的示例以了解自动拆箱。

更多关于包装类:

在自动装箱的例子中,变量 I 是 int 数据类型,对象 Integer 是一个包装类。 Java 中的包装类可用于所有原始数据类型。 这些类使用户能够将变量从原始数据类型转换为包装类类型的相应对象。 包装类方法用于值的操作。 下表总结了原始数据类型及其各自的包装类。 请注意,包装类的名称以大写字母开头。

原始数据类型

对应的包装类

字节字节
布尔值布尔值
字符特点
整数整数
漂浮漂浮
短的短的
双倍的双倍的

Java 中自动装箱和自动拆箱的优点:

  • 自动装箱和拆箱的过程使程序员能够编写结构良好且易于阅读的代码。
  • 该过程还使用户能够在原始数据类型和包装类对象之间交替切换。 因此,不需要显式类型转换。

如果您有兴趣了解有关 Java、全栈软件开发的更多信息,请查看 upGrad 和 IIIT-B 的软件开发执行 PG 课程——全栈开发专业化,该课程专为在职专业人士设计,并提供 500 多个小时的严格培训、9 个以上的项目和任务、IIIT-B 校友身份、实用的实践顶点项目和顶级公司的工作协助。

想要分享这篇文章?

为未来的职业做准备

立即申请软件工程硕士