Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误和异常

Java 多线程

Java 同步

Java 网络

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 杂项

Java API 和框架

Java 类参考

Java 有用资源

Java - 包装类



为什么需要 Java 包装类?

通常,当我们使用数字时,我们会使用诸如 byte、int、long、double 等基本数据类型

示例

int i = 5000;
float gpa = 13.65f;
double mask = 125;

但是,在开发中,我们会遇到需要使用对象而不是基本数据类型的情况。为了实现这一点,Java 提供了包装类

Java 包装类

  • 包装类是指其对象在其内部封装了基本数据类型的类。

  • java.lang 包中,Java 为每个基本数据类型提供了一个单独的类,即 ByteCharacterDoubleIntegerFloatLongShort

  • 在实例化时,这些类直接接受基本数据类型,或以字符串的形式接受。

  • 包装类提供方法来将它们内部的基本数据类型转换为字符串对象,以及将它们与其他对象进行比较等。

  • 使用包装类,您还可以将基本数据类型添加到各种集合对象中,例如 ArrayList、HashMap 等。您还可以使用包装类通过网络传递基本值。

所有包装类(Integer、Long、Byte、Double、Float、Short)都是抽象类 Number 的子类。

Number Classes

Java 包装类的对象

包装类的对象包含或封装其各自的基本数据类型。将基本数据类型转换为对象称为装箱,这是由编译器处理的。因此,在使用包装类时,您只需要将基本数据类型的值传递给包装类的构造函数。

并且包装对象将转换回基本数据类型,此过程称为拆箱。Number 类是 java.lang 包的一部分。

创建 Java 包装类对象

在 Java 中,要创建包装对象,您必须使用包装类而不是基本数据类型。

如果要打印这些对象的值,只需打印对象即可。

请考虑以下语法

wrapper_class object_name = value;

Java 包装类的示例

以下是装箱和拆箱的示例:

在这个示例中,我们展示了使用包装类使用基本类型及其操作。在第一个语句中,我们将一个 int 赋值给一个 Integer 对象 x,这被称为装箱。在第二个语句中,我们将 10 加到 x 上,这需要将 x 拆箱为 int,执行加法,并将结果赋值回变量 x 并打印。

public class Test {

   public static void main(String args[]) {
      Integer x = 5; // boxes int to an Integer object
      x =  x + 10;   // unboxes the Integer to a int
      System.out.println(x); 
   }
}

输出

15

当 x 被赋予一个整数值时,编译器会将整数装箱,因为 x 是整数对象。稍后,x 被拆箱,以便它们可以作为整数相加。

Java 包装类列表

以下是所有 Number 类子类的包装类列表:

序号 类和描述
1

Boolean

Java Boolean 类将基本类型 boolean 的值包装在对象中。

2

Byte

Java Byte 类将基本类型 byte 的值包装在对象中。

3

Character

Java Character 类将基本类型 char 的值包装在对象中。

4

Double

Java Double 类将基本类型 double 的值包装在对象中。

5

Float

Java Float 类将基本类型 float 的值包装在对象中。

6

Integer

Java Float 类将基本类型 float 的值包装在对象中。

7

Long

Java Long 类将基本类型 long 的值包装在对象中。

8

Short

Java Short 类将基本类型 short 的值包装在对象中。

广告