Day 2
一.基本数据类型的转换实际操作
1.例题
我们再次复习一下数据类型精度从低到高的排列:
byte<short<char<long<float<double
public class Day_2 {
public static void main(String[] args) {
byte b = 22;
int n= 129;
float f =123456.6789f;
double d=123456789.123456789;
System.out.println("b="+b);
System.out.println("n="+n);
System.out.println("f="+f);
System.out.println("d="+d);
b = (byte) n;
f = (float)d;
System.out.println("b="+b);
System.out.println("f="+f);
}
}
结果
b=22
n=129
f=123456.68
d=1.2345678912345679E8
b=-127
f=1.2345679E8
由例题我们可以知道,byte<int;float<double。这样强行转化数据类型会导致精度的损失byte的取值范围在[-2^7,2^7-1]也就是[-128,127],而n的值为129大于最大的127导致结果如此,d也是如此。