首先楼主爱思考是很好的 呵呵
我理解如下,首先byte 是占一个字节 八位,所以byte的取值范围 为-128 到127 用二级制表示是10000000到01111111
b=++b;这句代码,编译能通过是因为b=(byte)b+1;首先b+1,一个byte类型的跟int类型的会类型自动提升,所以结果为int型的128 用二进制表示就是10000000,然后再强制转换成byte类型,只留最后八位,所以就变成了10000000(前面的0全部去除了),100000000在byte类型里面是表示-128,所以楼主得到的结果是-128 |