数据类型
目录基本数据类型
- 整型:
byte
:8位有符号整数,取值范围从 -128 到 127。- short`:16位有符号整数,取值范围从 -32,768 到 32,767。
int
:32位有符号整数,默认的整数类型,取值范围从 -2^31 到 2^31-1。long
:64位有符号整数,取值范围从 -2^63 到 2^63-1。在数值后加上L
或l
来表示。
- 浮点型:
float
:32位单精度浮点数。在数值后加上F
或f
来表示。double
:64位双精度浮点数,默认的浮点数类型。
- 字符型:
char
:16位Unicode字符,可以存储任何字符。
- 布尔型:
boolean
:只有两个可能的值:true
和false
。
引用数据类型
引用数据类型指向内存中的一个对象,而不是直接存储数据。Java 中的引用数据类型包括:
- 类(Class):
- 比如
String
,Integer
,System
等,用户也可以自定义类。
- 比如
- 接口(Interface):
- 完全抽象的类,可以被其他类实现。
- 数组(Array):
- 一种容器对象,可以包含固定数量的单一类型值。
- 枚举(Enum):
- 一组命名的常量。
- 包装类(Wrapper Class):
- 基本数据类型的包装类,如
Integer
,Double
,Character
等,它们是基本数据类型的类类型等价物。
- 基本数据类型的包装类,如
自动装箱与拆箱
Java 5 引入了自动装箱(Autoboxing)和拆箱(Unboxing)机制,允许自动地在基本数据类型和相应的包装类之间转换。例如:
- 自动装箱:
int
到Integer
- 拆箱:
Integer
到int
默认值
每种数据类型在未显式初始化时都有一个默认值:
- 整型(
byte
,short
,int
,long
):默认值为 0。 - 浮点型(
float
,double
):默认值为 0.0。 - 字符型(
char
):默认值为\u0000
(即 Unicode 编码中的空字符)。 - 布尔型(
boolean
):默认值为false
。 - 引用类型:默认值为
null
。