Java 基础数据类型转换
容量大小指的是表示的数的大小,不是内存里面占了多少
//首先先把i1和i2转化为double类型,然后在运算(结果为double类型),在强制转换
//强制转换就是在一个数前面写上另外一个数据的类型,就可以把这个数强制转换成为另外一个数(前提是能够转换)
float f1 = (float) ((i1 + i2) * 1.2); // 需要加强制转换符
byte b11 =67;
byte b21 =89;
byte b31 = (byte) (b11+b21);
//-100的原因,因为int转换为byte时系统会去掉3个字节剩下一个字节为byte类型
System.out.println(b31);
//不加f相当于就是double类型,直接转换不过去
float f3 = 1.23f; // 必须加f
j没有值,变量需要先声明,在赋值.
byte b = b1 + b2;(b1+b2转化成为int类型,没有强制转换)
char c = c1+c2-1;(同样没有强制转换)
float f3 = f1+f2;(没有加(float)强制转换)
正确代码如下:
//0.1f: 在计算机内部就是一个float类型(4个字节)
//(float) 0.1: 0.1是8个字节但是是强制转换成了4个字节的float
float f1 = (float) 0.1; //或 0.1f