byte类型在赋值时出现的一些问题,int型不会有这些问题,因为它是整数默认类型。
package day2;
/*
* #功能:byte类型在转换时的问题。
* #重点:常量数字默认是int型。
* 两个变量byte相加不能赋值给另一个byte型变量,因为值不确定,可能会丢失精度。
*/
public class Demo {
public static void main(String[] args)
{
byte b = 3;
b = 3 + 4; //正确,在范围内
// b = 300 + 4;会报错,超出范围。
b = (byte) (300 + 5);
byte a = 4;
byte c = 5;
b = (byte) (a + c);//可以做强制类型转换。
//b = a + c;会报错,另外两个变量的值不确定,可能会超出范围出现错误。
System.out.println(b);
}
}