java 小问题 short的取值范围在-2^15到2^15-1 那为什么我写short max=0x7fff正确而
答案:3 悬赏:70 手机版
解决时间 2021-03-23 14:05
- 提问者网友:战皆罪
- 2021-03-22 18:38
java 小问题 short的取值范围在-2^15到2^15-1 那为什么我写short max=0x7fff正确而
最佳答案
- 五星知识达人网友:毛毛
- 2021-03-22 19:43
不啊,你这个0x8000前面没加负号,这个就是个正数,所以就超了呀,你改成-0x8000才是-2^15
全部回答
- 1楼网友:逐風
- 2021-03-22 22:50
0x8000是2^15,而-2^15是-0x7fff不谢追问0x8000 不是 1000 0000 0000 0000么 怎么会是正数追答1000 0000 0000 0000为什么不是正数
- 2楼网友:神也偏爱
- 2021-03-22 21:16
这个是因为系统默认0x8000是int类型的,他是32位空间,因而就超过了最大的范围。
这样就可以了short t = (short)0x8000;
建议用下面的赋值语句:
short max=Short.MAX_VALUE;
short min=Short.MIN_VALUE;
这样就可以了short t = (short)0x8000;
建议用下面的赋值语句:
short max=Short.MAX_VALUE;
short min=Short.MIN_VALUE;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯