数据类型的概述和分类
A. 为什么有数据类型
变量是内存中一小块区域,我们定义一个变量,其实就是开辟一个内存空间。
如果没有数据类型,我们需要开辟多大的内存空间合适?
为了解决这个问题,Java提供了许多不同数据类型,针对不同的数据类型,在内存中分配了不同大小的内存空间。
B. JAVA中数据类型的分类
(1) 基本数据类型
(2) 引用数据类型 :数组 类 接口
C. 基本数据类型
(1)数值型
整数型 字节型 范围
byte 1(8bit) -128 ~ 127
short 2(16bit) -2^15 ~ 2^15-1
int 4(32bit) -2^31 ~ 2^31 - 1
long 8(64bit) -2^63 ~ 2^63 - 1
浮点数
float 4(32bit) -3.403*10^38 ~ 3.403*10^38
double 8(64bit) -1.798*10^308 ~ 1.798*10^308
(2): 字符型
char 2(16bit) 0 ~ 2^16 - 1 = 65535
(3): 布尔型
boolean 1
注意:
(1)整数默认是int类型的 , 浮点数默认是 double类型的
(2)定义long类型的变量时,值的后面需要加上一个后缀L,表明他是一个long类型的值
(3)定义float 类型时,值的后面必须加上后缀F 表示他是一个float类型的值
数据类型转换之隐式转换
A. +是一个运算符,做数据的加法
B. Java中默认转换规则
(1)boolean类型不能转换为其他的数据类型
(2)byte ,short , char-int-long-float-double
(3)byte,short, char之间不能转换,他们参与运算首先转换为int类型
数据类型转换之强制转换
A. 强制转换的格式
目标数据类型 变量名=(目标数据类型)(被转换的数据)
B.强制转换的注意事项
尽量不要使用强制类转化,因为可能存在损失精度的问题