7. Java中,基本数据类型
基本数据类型(基元类型)
在 Java
中,变量必须先声明再使用。声明变量时,必须指定其类型和名称,类型决定了变量可以存储的数据种类。Java
支持八种原始数据类型,这些数据类型在语言中是预定义的,并且由关键字表示。它们分别是:
-
byte:
8
位有符号整数。- 最小值:
-128
,最大值:127
。 - 适用于内存非常有限且对范围要求较小的场合,例如处理大数组时节省内存。
byte b = 100;
-
short:
16
位有符号整数。- 最小值:
-32,768
,最大值:32,767
。 - 与
byte
类似,适合内存紧张的情况下使用。
short s = 1000;
-
int:
- 默认的整数类型,
32
位有符号整数。 - 最小值:
-2,147,483,648
,最大值:2,147,483,647
。
int i = 1000;
- 默认的整数类型,
-
long:
64
位有符号整数。- 最小值:
-9,223,372,036,854,775,808
,最大值:9,223,372,036,854,775,807
。 - 用于需要表示大数值的情况。
long l = 100000L; // 使用 L 表示 long 类型
-
float:
- 单精度
32
位IEEE 754
浮点数。 - 用于表示具有小数的数值,但精度较低,通常用于内存敏感的情况。
float f = 10.5f; // 使用 f 后缀表示 float 类型
- 单精度
-
double:
- 双精度
64
位IEEE 754
浮点数。 - 通常用于表示精度要求较高的浮点数,尤其是涉及大范围或精确计算时。
double d = 100.99;
- 双精度
-
boolean:
- 只有两个值:
true
和false
。 - 用于逻辑条件和标志值。
boolean isTrue = true;
- 只有两个值:
-
char:
16
位Unicode
字符,用于存储单一字符。- 最小值:
\u0000
(0
),最大值:\uffff
(65,535
)。
char c = 'A';
字符串(String)
Java 中还有一个特殊的数据类型 String
,虽然技术上它并不是一个基本数据类型,但由于 Java
对它有特别支持,它在实际编程中常被当作基本数据类型来使用。String
是不可变的,即创建后无法改变其内容。字符串可以用双引号表示:
String str = "Hello, Java!";
基本数据类型的特点
-
存储方式:基本数据类型的变量直接存储数据本身,而对象类型(如
String
)的变量则存储对实际数据的引用。 -
默认值:如果变量没有显式初始化,
Java
会为其分配一个默认值:- 数值类型(
byte
,short
,int
,long
,float
,double
)的默认值为0
。 boolean
类型的默认值为false
。char
的默认值为'\u0000'
,即空字符。String
类型的默认值为null
。
- 数值类型(
使用示例
public class DataTypesExample {
public static void main(String[] args) {
byte b = 100;
short s = 2000;
int i = 5000;
long l = 100000000L; // long 类型
float f = 10.5f; // float 类型
double d = 99.99; // double 类型
boolean isTrue = true;
char c = 'A';
String str = "Hello, Java!";
// 输出所有变量的值
System.out.println("byte: " + b);
System.out.println("short: " + s);
System.out.println("int: " + i);
System.out.println("long: " + l);
System.out.println("float: " + f);
System.out.println("double: " + d);
System.out.println("boolean: " + isTrue);
System.out.println("char: " + c);
System.out.println("String: " + str);
}
}
总结
- 基元类型是 Java 提供的基础数据类型,包括
byte
、short
、int
、long
、float
、double
、boolean
和char
。 - String 是 Java 特别支持的类型,尽管它不是基元类型,但通常也被视为一种基础类型来处理。
- 基本数据类型是静态类型的,意味着在使用前必须声明并初始化变量。
- 这些数据类型具有各自的存储范围和用途,选择合适的数据类型可以提高程序的效率和精度。
🎯 使用最佳实践
✅ 整数优先用 int
,浮点数优先用 double
(默认类型)
✅ 货币计算用 BigDecimal
,避免浮点误差
✅ char
可以存储 Unicode,支持多语言
✅ 如果变量的范围小于 int
,可以用 byte
或 short
以节省内存