首页 > 技术文章 > 【Java】【基本数据类型】深入理解 Java 基本数据类型

zzsuje 2021-06-08 17:37 原文

转载自 :https://dunwu.github.io/javacore/basics/java-data-type.html

2. 数据转换

3. 装箱和拆箱

4. 判等问题

5. 数值计算

6. 参考资料

# 1. 数据类型分类

Java 中的数据类型有两类:

  • 值类型(又叫内置数据类型,基本数据类型)

引用类型(除值类型以外,都是引用类型,包括 String、数组)

# 1.1. 值类型

Java 语言提供了 8 种基本类型,大致分为 4

基本数据类型分类比特数默认值取值范围说明
boolean 布尔型 8 位 false {false, true}
char 字符型 16 位 '\u0000' [0, $2^{16} - 1$] 存储 Unicode 码,用单引号赋值
byte 整数型 8 位 0 [-$2^7$, $2^7 - 1$]
short 整数型 16 位 0 [-$2^{15}$, $2^{15} - 1$]
int 整数型 32 位 0 [-$2^{31}$, $2^{31} - 1$]
long 整数型 64 位 0L [-$2^{63}$, $2^{63} - 1$] 赋值时一般在数字后加上 lL
float 浮点型 32 位 +0.0F [$2^{-149}$, $2^{128} - 1$] 赋值时必须在数字后加上 fF
double 浮点型 64 位 +0.0D [$2^{-1074}$, $2^{1024} - 1$] 赋值时一般在数字后加 dD

尽管各种数据类型的默认值看起来不一样,但在内存中都是 0。

在这些基本类型中,booleanchar 是唯二的无符号类型。

# 1.2. 值类型和引用类型的区别

  • 从概念方面来说
  • 基本类型:变量名指向具体的数值。
  • 引用类型:变量名指向存数据对象的内存地址。

从内存方面来说

  • 基本类型:变量在声明之后,Java 就会立刻分配给他内存空间。
  • 引用类型:它以特殊的方式(类似 C 指针)向对象实体(具体的值),这类变量声明时不会分配内存,只是存储了一个内存地址。

从使用方面来说

  • 基本类型:使用时需要赋具体值,判断时使用 == 号。
  • 引用类型:使用时可以赋 null,判断时使用 equals 方法。

推荐阅读