其中的B选项,1+1,1是int类型,该不该强制类型转换,为什么?
答:b=1+1相当于b=2,这里byte能够容下2,会发生隐式类型转换不用强制类型转换
这里要强调一下,隐式类型转换一般都是放宽转换(如byte到int)
但有一个例外,在赋值转换中,隐性转换也包含了缩窄基本转换(从int到byte),但是记住一定实在赋值转换中,如byte b=1,是可以的,但是int a=1,byte i=a就不行,必须要强制类型转换
而C、D选项是不是自动类型转换了?
答:C是,D是强制转换,+=操作符默认有强转换功能 |
|