A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© cs8630323 高级黑马   /  2014-9-17 18:05  /  1092 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

byte a=127; a=++a;
输出a结果是  -128
能说说原理吗?
还有为什么a=++a,不用强转byte??

评分

参与人数 1黑马币 +1 收起 理由
格子、 + 1

查看全部评分

3 个回复

倒序浏览
这种a++,a--.之类它不会提升数据类型,当a++或a--超出数据范围的时候他就会在-128至127之间循环,如果你变成常量给他相加 byte a = 127;a=a+1,它就会编译失败.
回复 使用道具 举报
楼上说的不错
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马