Java 原始数据类型
原始数据类型又叫基本数据类型,在本教程中,我们将借助示例了解 Java 中的所有 8 种原始数据类型。
在本教程中,我们将借助示例了解 Java 中的所有 8 种原始数据类型。
Java 数据类型
顾名思义,数据类型指定了可以存储在 Java 变量中数据的类型。
Java 是一种静态类型语言。所有变量必须先声明,然后才能使用。
int speed;
这里, speed
是一个变量,变量的数据类型是 int
。 int
数据类型决定了 speed
变量只能包含整数。
Java 编程语言中预定义了 8 原始数据类型,包括:
boolean
: 布尔型byte
: 字节型short
: 短整型int
: 整型long
: 长整型double
: 双精度浮点型float
: 单精度浮点型char
: 字符型
原始数据类型又叫基本数据类型,除了原始数据类型,还有引用类型(对象类型),本文逐一介绍这 8 种原始数据类型。
布尔型
- 布尔型使用
boolean
关键字声明。 - 布尔数据类型有两个可能的值:
true
或false
。 - 默认值:
false
。 - 它们通常用于 真/假 条件。
Java boolean 类型示例
public class Main {
public static void main(String[] args) {
boolean flag = true;
System.out.println(flag); // true
}
}
字节型
- 字节型使用
byte
关键字声明。 - 字节型取值范围从
-128
到127
(8 位有符号二进制补码整数)。 - 如果确定变量的值在
-128
到127
之间,请使用它代替int
以节省内存。 - 默认值:
0
。
Java byte 类型示例
public class Main {
public static void main(String[] args) {
byte range;
range = 124;
System.out.println(range); // 124
}
}
短整形
- 短整型使用
short
关键字声明。 short
数据类型取值范围从-32768
到32767
的值(16 位有符号二进制补码整数)。- 如果确定变量的值在
-32768
和32767
之间,则使用它代替其他整数数据类型 (int
,long
)。 - 默认值:
0
Java short 类型示例
public class Main {
public static void main(String[] args) {
short temperature;
temperature = -200;
System.out.println(temperature); // -200
}
}
整形
- 整型使用
int
关键字声明。 int
数据类型取值范围是-2^31
到2^31 - 1
(32 位符号的二进制补码整数)。- 如果您使用的是 Java 8 或更高版本,可以使用无符号 32 位整数。无符号 32 位整数的取值范围是
0
到2^32 - 1
。 - 默认值:
0
。
Java int 类型示例
public class Main {
public static void main(String[] args) {
int range = -4250000;
System.out.println(range); // -4250000
}
}
长整形
- 长整形使用
long
关键字声明。 long
数据类型可以具有从值-2^63
到2^63 - 1
(64 位符号的二进制补码整数)。- 如果您使用的是 Java 8 或更高版本,则可以使用最小值为
0
且最大值为2^64 - 1
的无符号 64 位整数。 - 默认值:
0
。
Java long 类型示例
public class LongExample {
public static void main(String[] args) {
long range = -42332200000L;
System.out.println(range); // -42332200000
}
}
请注意,在 -42332200000
后使用字符 L
。这表示它是该 long
类型的整数。
双精度浮点型
- 双精度浮点型使用
double
关键字声明。 double
数据类型是一个双精度 64 位浮点数。double
数据类型不应该用于货币金额等精确的值。- 默认值:
0.0
(0.0d
)
Java double 类型示例
public class Main {
public static void main(String[] args) {
double number = -42.3;
System.out.println(number); // -42.3
}
}
单精度浮点型
- 单精度浮点型使用
float
关键字声明。 float
数据类型是单精度 32 位浮点数。float
数据类型不应该用于货币金额等精确的值。- 默认值:
0.0
(0.0f
)
Java float 类型示例
public class Main {
public static void main(String[] args) {
float number = -42.3f;
System.out.println(number); // -42.3
}
}
请注意,我们在上面的程序中使用了 -42.3f
代替 -42.3
。因为 -42.3
是 double
字面意思,而 float
类型的字面量需要用 f
或 F
字符结尾。
字符类型
- 字符类型使用
char
关键字声明。 char
数据类型是一个 16 位 Unicode 字符。char
数据类型的最小值为'\u0000'
(0),最大值为'\uffff'
。- 默认值:
'\u0000'
Java char 类型示例
public class Main {
public static void main(String[] args) {
char letter = '\u0051';
System.out.println(letter); // Q
}
}
输出:Q
这里的 \u0051
是字符 Q
的 Unicode 值。因此,我们程序输出了 Q
字符。
再看另一个例子:
public class Main {
public static void main(String[] args) {
char letter1 = '9';
System.out.println(letter1); // 9
char letter2 = 65;
System.out.println(letter2); // A
}
}
输出:
9
A
在这里,我们为变量 letter1
分配的是一个字符 '9'
(由单引号指定),为变量 letter2
分配的是一个整数 65
(没有单引号)。
因为 Java 将字符视为整数类型,当为 char 类型赋值数字时,则代表了字符的 ASCII 码值。 数字 65
是 A
的 ASCII 码值,因此会打印 A
。
字符串类型
Java 还通过 java.lang.String
类提供对字符串的支持。Java 中的字符串不是原始类型。相反,它们是对象。例如,
String myString = "Java 编程";
这里, myString
是 String
类的对象。要了解更多信息,请访问Java 字符串章节。