黑马程序员技术交流社区

标题: 基本类型的运算与赋值的问题 [打印本页]

作者: aion2013tian    时间: 2013-11-16 18:50
标题: 基本类型的运算与赋值的问题
本帖最后由 aion2013tian 于 2013-11-17 22:43 编辑

public static void main(String[] args) {
        /*byte b = 1;
        b = b += 1; */          //不会出现对b的赋值无效的叹号提醒
        byte b = 1;
        b = ++b;                //出现对b的赋值无效的叹号提醒
        System.out.println(b);

}
如上所述,b = b += 1为什么不出现对b的赋值无效的叹号提醒
作者: Weix1992    时间: 2013-11-16 19:34
我想应该是这样
b = b += 1;  在编译期的时候,会先检查b+=1这句话然后发现B的值改变了,这样赋值就成功了

b = ++b; 而这句话,在编译期的时候++符号是没有检查的,所以会有警告。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2