Java数据类型包装器是一种特殊的Java类,它们可以将原始数据类型(如int、float、char等)封装成对象。它们可以用来在Java中使用原始数据类型,而不必使用对象。这些包装器有助于在Java中实现面向对象的思想,因为它们可以将原始数据类型封装成对象。
Java数据类型包装器有8个:Boolean、Byte、Character、Short、Integer、Long、Float 和 Double。这些包装器都是final的,不能被子类化。此外,它们也都是不可变的,因此一旦创建就不能修改其内部的内容。
public class WrapperClasses { public static void main(String[] args) { // Boolean wrapper class Boolean b1 = new Boolean(true); // Byte wrapper class Byte b2 = new Byte((byte) 10); // Character wrapper class Character ch = new Character('a'); // Short wrapper class Short s = new Short((short) 10); // Integer wrapper class Integer i = new Integer(10); // Long wrapper class Long l = new Long(100L); // Float wrapper class Float f = new Float(10.5f); // Double wrapper class Double d = new Double(20.5d); } }
这些类称为包装类,因为它们在对象中包装原始值。
下表列出了原始类型及其相应的包装类。
基本类型 | 包装类 |
---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
所有包装类都是不可变的。它们提供了两种方法来创建它们的对象:
除了Character之外,每个包装类都提供至少两个构造函数:一个采用对应基本类型的值,另一个采用String。
Character类只提供一个接受char的构造函数。
以下代码创建一些包装类的对象:
public class Main { public static void staticMethod() { // Creates an Integer object from an int Integer intObj1 = new Integer(100); // Creates an Integer object from a String Integer intObj2 = new Integer("1969"); // Creates a Double object from a double Double doubleObj1 = new Double(10.45); // Creates a Double object from a String Double doubleObj2 = new Double("234.60"); // Creates a Character object from a char Character charObj1 = new Character("A"); // Creates a Boolean object from a boolean Boolean booleanObj1 = new Boolean(true); // Creates Boolean objects from Strings Boolean booleanTrue = new Boolean("true"); Boolean booleanFalse = new Boolean("false"); } }
创建包装类对象的另一种方法是使用它们的valueOf()方法。
valueOf()方法是静态的。
下面的代码使用它们的valueOf()方法创建一些包装器类的对象:
public class Main { public static void staticMethod() { Integer intObj1 = Integer.valueOf(100); Integer intObj2 = Integer.valueOf("2014"); Double doubleObj1 = Double.valueOf(10.45); Double doubleObj2 = Double.valueOf("234.56"); Character charObj1 = Character.valueOf("A"); } }
Java数据类型教程 -Java字符串创建/长度创建字符串对象String类包含许多可用于创建String对象的构造函数。默认构造函数创建一个...
Java数据类型教程 -Java StringBuilder/StringBufferStringBuilder和StringBuffer是String类的伴随类。它们表示一个可变的字符序...
Java 实例 - 打印目录结构 Java 实例以下实例演示了使用 File 类的 file.getName() 和 file.listFiles() 方法来打印目录结构:im...
Java 实例 - 输出指定目录下的所有文件 Java 实例以下实例演示了如何使用 File 类的 list 方法来输出指定目录下的所有文件:impo...
Java 实例 - 在指定目录中查找文件 Java 实例以下实例演示了在 C 盘中查找以字母 'b' 开头的所有文件:import java.io.*...