八种基本数据类型:int、short、long、byte、float、double、boolean、char;

对应的封装类Integer、Short、Long、Byte、Float、Double、Boolean、Character。

数据类型

包装类

字节长度

大小位

取值范围

默认值

说明

int

Integer

4

32

-2^31 ~ 2^31-1

0

整形

short

Short

2

16

-2^15 ~ 2^15-1

0

短整型

long

Long

8

64

-2^63 ~ 2^63-1

0l 或 0L

长整型

byte

Byte

1

8

-2^7 ~ 2^7-1

0

字符型,数据存储在内存中的最原始形态

float

Float

4

32

-2^128 ~ 2^128

0.0f 或 0.0F

浮点型,用于存储单精度数字

double

Double

8

64

-2^1024 ~ 2^1024

0.0

双精度型,用于存储双精度数字,默认声明的小数

boolean

Boolean

1

1

true 或 false

false

布尔型,用于存储真值或假值

char

Character

2

16

'\u0000' ~ '\uFFFF'

'\u0000'

字符型,用于存储字符,以 Unicode 编码方式

注意点:

  1. 包装类的默认值为 null,包装类可以区分出未赋值和值为 0 的区别,而数据类型无法表达出未赋值的情况。
  2. 基础数据类型在传递参数时都是按值传递,封装类都是按引用传递
  3. JAVA中的数值类型不存在无符号的,它们的取值范围是固定的,不会随着机器硬件环境或者操作系统的改变而改变。
  4. Java默认声明的小数类型是 double 类型的,所以在声明 float 类型的小数时需要进行类型转换。(float f = 1.0f  或者 float f = (float)1.0
  5. 基本数据类型之间可以进行相互转换,有两种转换方式,分别是自动转换和强制转换,自动转换是从低精度向高精度转换,优先级顺序为:byte < short < char < int < long < float < double。强制转换则是从高精度向低精度进行转换,在转换过程中可能会损失精度。(自动转换:int a = 10; double b = a; b的值为10.0