Java中的8个数据类型:
byte
:
字节类型数据
int
:
整形数据
short
:
短整形数据
long
:
长整形数据
float
:
单精度浮点类型数据
double
:
双精度浮点类型数据
boolean
:
布尔类型数据
char
:
字符类型数据
数据类型 | 大小 | 范围 | 默认值 |
byte | 8 | -128~127 | 0 |
int | 16 | -32768 - 32768 | 0 |
short | 32 | -2147483648 2147483647 | 0 |
long | 64 | -9223372036854775808 9223372036854775807 | 0 |
float | 32 | 1.4E-45 3.4028235E38 | 0.0f |
double | 64 | 4.9E-324 1.7976931348623157E30 | 0.0d |
boolean | 1 | True,false | false |
char | 16 | 0000 - ffff | 0000 |
变量的声明
int money; ------------>
声明变量
money = 3000; ------------>
变量赋值
System.out.print(money); ------------>
使用变量
int money2 = 4000; ------------>
在java中,不能出现名字相同的变量
数据类型的转换
规则一:(算术运算)在进行运算的时候,数据结果类型为运算数的最高类
型。
7种数据类型的层级高低关系图:
long result = 5+6+7L+'A';
System.out.println(result);
其中,因为5,6,7L,'A'中最高级别的数据类型为long,所以result的数据类型为long。结果为83
double result2 = 5+5.6*4+'A';
System.out.println(result2);
其中,因为5,5.6,4,'A'中最高级别的数据类型为double,所以result的数据类型为double。结果为92.4
规则二:(赋值运算)满足自动转换条件
double d = 12;
规则三:(强制转换):将高级别类型赋值给低级别类型时,必须进行强制
类型转换。强制类型转换会损失精度
int i = 76;
byte b =
(byte)
i;
System.out.println(b);
short s =
(short)
i;
System.out.println(s);
基本数据类型
转换为
包装类
的方法,
valueOf(即装箱)
,装箱之后可以使用包装类的方法
byte b = 21;------------>基本数据类型
Byte b2 =
Byte.valueOf
("21");------------>包装数据类型(装箱)
System.out.println(b);
System.out.println(
b2.MAX_VALUE
);
System.out.println(b2.MIN_VALUE);
System.out.println(b2.SIZE);
若未将基本数据类型转化成包装数据类型,则不能使用方法,它只代表了一个数据而已,即不存在b.MIN_VALUE。
包装类
转换为
基本数据类型
,
...Value(即拆箱
)
Integer i3 = Integer.valueOf(5);
int i4 =
i3.intValue
();
Short s3 = Short.valueOf("25");
short s4 = s3.shortValue();