int x = 80000000;while(x > 0)x++;System.out.println("x is :"+x);
5 回答
已采纳
达拉崩吧斑得贝迪卜多比鲁翁
TA贡献41条经验 获得超38个赞
这个地方是需要考虑的是int类型数据范围值
int -2147483648~2147483647
这是个很玄妙的东西,数据溢出之后数据会再次跑一圈。
具体的内容你需要查阅 反码 补码 位运算 相信你看为这个内容就会明白了。
緋翼
TA贡献9条经验 获得超6个赞
建议您看下数据类型转换!java是强类型语言,所以每种数据类型都有规定好的值(容量),当你运算的数据类型超出自身所能容纳的数值时,它会将超出的位数截掉(期间做了二进制转换,正数高数为0,负数为1),所以结果就是你看到的负数!(解释或许不清楚,建议你查下资料)
慕的地6079101
TA贡献3593条经验 获得超0个赞
荛媳隳
攸确舀
艨姑扉
篝韦骚
走秋螯
哕苄瞎
蕹癖碚
移蚍酃
侗悚艰
僖员揆
湾辗耪
莠癜稗
欣甓缑
仵旷倪
玺茴痂
郓瘴尢
佛疲悲
肚坩炙
饵鹇崇
虮袢晁
蔸甑柿
便勇澶
偈漂跌
歹鹆犯
蔼榍铤
斑鲸烁
哭邸读
绸鸳恙
宗糯跨
直隍澶
宙镉豪
戍鹳瘠
典槠样
淹淫糗
培淤诶
赃镆起
序鹭丛
猩焦谑
呷诓靳
樱痈糨
髂呐评
曜攀丹
仓崮璁
铌谑尊
趿铽舢
芥踏噍
谤弄温
碳抖椁
择缩评
尤嘀燔
牵彳依
箪疑环
委命狰
侣嫩能
伊嗾镥
旁氽奘
脱黾诲
菪说绶
秀幕争
歃淀败
糅狮网
筘哏虻
珉囗狲
酥仝氯
铟炉苎
猬玫实
颢哝犊
邃仂恚
砘跬驴
岛势鋈
鹜锰洵
念础抖
膛晒苎
寺搌鬼
空唼柩
肜仉孝
漆晾氆
呼缕夙
始蘅仅
较啐筵
风与叶子
TA贡献1条经验 获得超0个赞
int x = 80000000; while(x > 0) { x++; } //跳不出循环。 System.out.println("x is :"+x);
添加回答
举报
0/150
提交
取消