自动类型转换图
- 低类型的可以自动转换为高类型的;
- 高类型转换为低类型需要强制类型转换;
- 不能对布尔值进行转换;
- 不能把对象类型转换为毫不相干的类型;
- 高到低转换过程中可能产生内存溢出或者精度问题。
强制类型转换语法
(目标类型)变量
int i = 128;
byte n = (byte) i;//高——>低,必须强制转换
double m = i; //低——>高,自动转换
System.out.println(i);
System.out.println(n);
System.out.println(m);
//输出
128
-128//byte最大只能存127,所以此处溢出
128.0//自动转换成浮点数,带上了小数点
char s='a';
byte l=(byte)s;
System.out.println(s);
System.out.println(l);
//输出
a
97
补充
jdk7新特性:数字可以用下划线进行分割。
System.out.println(100_000_000);
//输出
100000000