在eclipse里“byte b = 1; b = b + 1;”这个是报错的,为什么这个是错的,其它两个是对的? 作者: 青木郎 时间: 2014-3-27 12:18
byte b = 1;
b = b + 1在这句话中 b+1,b是byte类型,b+1,b类型提升,成为(int)b+1,之后b+i成为int类型,你将类型赋值给byte类型的b,肯定类型转换错误
你可以改成b+=1; 作者: nestor 时间: 2014-3-27 12:29
青木郎 发表于 2014-3-27 12:18
byte b = 1;
b = b + 1在这句话中 b+1,b是byte类型,b+1,b类型提升,成为(int)b+1,之后b+i成为int类 ...
明白了
b = b + 1 :b类型提升,成为(int)b+1
b+=1:会吧1转换成byte再加给b?作者: 青木郎 时间: 2014-3-27 12:32