基本数据类型和引用数据类型
温故而知新,可以为师矣!
基本数据类型
八大基本数据类型:
1.byte
8位、有符号的以二进制补码表示的整数
min : -128(-2^7)
max: 127(2^7-1)
default: 0
对应包装类:Byte
2.short
16位、有符号的以二进制补码表示的整数
min : -32768(-2^15)
max: 32767(2^15 - 1)
default: 0
对应包装类:Short
3.int
32位、有符号的以二进制补码表示的整数
min : -2,147,483,648(-2^31)
max: 2,147,483,647(2^31 - 1)
default: 0
对应包装类:Integer
4.long
64位、有符号的以二进制补码表示的整数
min : -9,223,372,036,854,775,808(-2^63)
max: 9,223,372,036,854,775,807(2^63 -1)
default: 0
对应的包装类:Long
5.float
单精度、32位、符合IEEE 754标准的浮点数
float 在储存大型浮点数组的时候可节省内存空间
浮点数不能用来表示精确的值,如货币
default: 0.0f
对应的包装类:Float
6.double
双精度、64位、符合IEEE 754标准的浮点数
浮点数的默认类型为double类型
double类型同样不能表示精确的值,如货币
default: 0.0d
对应的包装类:Double
7.char
char类型是一个单一的 16 位 Unicode 字符
最小值是 \u0000(即为0)
最大值是 \uffff(即为65,535)
char 数据类型可以储存任何字符
对应的包装类:Character
boolean
7.boolean数据类型表示一位的信息
只有两个取值:true 和 false
这种类型只作为一种标志来记录 true/false 情况
对应的包装类:Boolean
数据类型之间的转换
当java不同数据类型进行转换时,遵循以下规则
1.八种数据基本类型除了boolean类型之外剩下之间都可以相互转换
2.小容量向大容量转换,称为自动类型转换 (byte <short、char<int<long<float<double)
byte byt = 4;
int intil = byt;
3.大容量向小容量转换,称为强制类型转换。要在变量前加上强制类型转换符才能编译通过,但是可能会损失精度。
long num = 3999L;
int number = (int) num
4.当整数的常数值没有超过该数据类型取值范围,可以直接赋值给该数据类型的变量
5.byte short char 混合运算时,先转换为int型在经行运算
6.多种数据类型混合运算,先转换为容量最大的那种数据类型在做运算
思考?
int num = 5800;
byte numq = (byte) num;
System.out.println(numq);
1.结果为什么为-88?
2.short s= 1; s= s+1;为什么为报错,而 s+=1;不会?
3.当我定义一个浮点型类型,我如何保留3位有效数字?如何保留3位小数。
引用数据类型
class(类)、interface(接口)、包装类、数组、注解、枚举(enum)
来源:CSDN
作者:泡面鱼丸
链接:https://blog.csdn.net/qq_45835872/article/details/103562652