杰瑞科技汇

Java基本数据类型有哪些?

Java 中的数据类型分为两大类:基本数据类型引用数据类型

Java基本数据类型有哪些?-图1
(图片来源网络,侵删)
  • 基本数据类型:Java 语言内置的、最简单的数据类型,它们不是对象,没有方法,变量中直接存储“值”本身,Java 总共有 8 种基本数据类型。
  • 引用数据类型:包括类、接口、数组等,它们的变量存储的是指向对象在内存中地址的“引用”。

下面我们详细介绍这 8 种基本数据类型。


Java 的 8 种基本数据类型

这 8 种基本数据类型可以根据其特性分为四类:整数类型浮点类型字符类型布尔类型

整数类型

用于表示没有小数部分的数字。

数据类型 大小 (位) 范围 默认值 备注
byte 8 位 -128 到 127 0 占用空间最小,适用于大数组的节省空间。
short 16 位 -32,768 到 32,767 0 很少使用,除非需要特定大小的数据。
int 32 位 -2³¹ 到 2³¹-1 (约 -21亿 到 +21亿) 0 最常用的整数类型
long 64 位 -2⁶³ 到 2⁶³-1 0L 用于表示范围非常大的整数,结尾必须加 L 或 l

示例代码:

Java基本数据类型有哪些?-图2
(图片来源网络,侵删)
int age = 30; // 最常用
long population = 7800000000L; // 注意 L,否则会编译错误
byte smallNumber = 100;
short year = 2025;

浮点类型

用于表示带有小数部分的数字,即实数。

数据类型 大小 (位) 范围 默认值 备注
float 32 位 约 ±3.4E38 (7 位有效数字) 0f 单精度浮点数。结尾必须加 F 或 f,适用于对精度要求不高的场景。
double 64 位 约 ±1.7E308 (15 位有效数字) 0d 双精度浮点数,是默认的浮点类型,精度更高,应用更广泛。

示例代码:

double price = 99.99; // 默认是 double
float pi = 3.14f;     // 必须加 f
double scientific = 1.23e10; // 科学计数法

字符类型

用于表示单个字符。

数据类型 大小 (位) 范围 默认值 备注
char 16 位 \u0000\uffff (Unicode 字符) '\u0000' 使用 单引号 包围,'A',存储的是 Unicode 编码值。

示例代码:

Java基本数据类型有哪些?-图3
(图片来源网络,侵删)
char grade = 'A';
char chineseChar = '中'; // Java 内部使用 Unicode,可以表示中文等
char escapeChar = '\n'; // 转义字符,表示换行

布尔类型

用于表示逻辑上的“真”或“假”。

数据类型 大小 (位) 范围 默认值 备注
boolean JVM 依赖 true / false false 只能取 truefalse在 Java 中,boolean 类型的大小没有明确规定,不能用于数值计算(true + 1 是非法的)。

示例代码:

boolean isPassed = true;
boolean isFinished = false;

总结表格

类别 数据类型 大小 默认值 包装类
整数 byte 8-bit 0 Byte
short 16-bit 0 Short
int 32-bit 0 Integer
long 64-bit 0L Long
浮点 float 32-bit 0f Float
double 64-bit 0d Double
字符 char 16-bit '\u0000' Character
布尔 boolean (JVM-dependent) false Boolean

补充说明:包装类型

虽然基本数据类型不是对象,但在 Java 面向对象的特性下,有时需要将它们当作对象来使用(在集合类 ArrayList, HashMap 中,只能存放对象),为此,Java 为每种基本数据类型都提供了一个对应的包装类

基本类型 包装类
byte java.lang.Byte
short java.lang.Short
int java.lang.Integer
long java.lang.Long
float java.lang.Float
double java.lang.Double
char java.lang.Character
boolean java.lang.Boolean

从 Java 5 开始,引入了自动装箱自动拆箱 机制,使得基本类型和其包装类之间的转换非常方便。

示例:

// 自动装箱:int -> Integer
Integer numObject = 10;
// 自动拆箱:Integer -> int
int numPrimitive = numObject;
// 集合中只能存放对象
List<Integer> numbers = new ArrayList<>();
numbers.add(100); // 自动装箱
int value = numbers.get(0); // 自动拆箱

为什么要有基本数据类型?

  1. 性能:基本数据类型在内存中直接存储值,没有对象的开销(如对象头),访问速度更快,内存占用更小。
  2. 内存效率:对于需要处理大量数值的场景(如游戏、科学计算),使用基本类型可以极大地节省内存。
  3. 语法简洁:使得代码更简洁,更符合底层计算的习惯。

理解基本数据类型是学习 Java 的基石,它们是构建更复杂数据结构和程序逻辑的基础。

分享:
扫描分享到社交APP
上一篇
下一篇