五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

short s1 = 1; s1 = s1 + 1;有錯(cuò)嗎?short s1 = 1; s1 += 1;有錯(cuò)嗎?

2022-06-27 11:25 作者:網(wǎng)星軟件  | 我要投稿

先說一下Java的基本數(shù)據(jù)類型轉(zhuǎn)換規(guī)則,大的數(shù)據(jù)類型轉(zhuǎn)換為小的數(shù)據(jù)類型需要強(qiáng)制轉(zhuǎn)換,反之可以自動轉(zhuǎn)換。

賦值表達(dá)式等號兩側(cè)的轉(zhuǎn)換的規(guī)則是右側(cè)的向左側(cè)的看齊,即右側(cè)表達(dá)式要轉(zhuǎn)換到和左邊的類型一樣。

那么short s1 = 1; s1 = s1 + 1;的運(yùn)行就是錯(cuò)的。因?yàn)閟1 + 1中,s1是short類型,1是int型,s1會自動轉(zhuǎn)換為int型的1,與1相加后,得到int型的2,然后要向左側(cè)的short類型的s1看齊,即需要通過強(qiáng)制類型轉(zhuǎn)換將int型的結(jié)果轉(zhuǎn)換成short型才賦值給s1。正確寫法是:s1 = (short) (s1 + 1);。

接著short s1 = 1; s1 += 1;的運(yùn)行是正確的。因?yàn)閳?zhí)行s1+=1時(shí),其實(shí)執(zhí)行的是s1 = (short) (s1 + 1); 其中會有一個(gè)隱藏起來的強(qiáng)制轉(zhuǎn)換的過程,所以是運(yùn)行正確的。

最后short s1=1,s2=1;short s3=s1+s2;的運(yùn)行就是錯(cuò)的。這里是編譯器從數(shù)據(jù)安全方面考慮,如果s1和s2都是較大的short類型數(shù)據(jù)值,那么它們加起來就會超出short型的取值范圍,可能會導(dǎo)致溢出,所以會要求將short型強(qiáng)制轉(zhuǎn)換到int型。正確寫法是:short s3 = (int)s1 + s2;。

short s1 = 1; s1 = s1 + 1;有錯(cuò)嗎?short s1 = 1; s1 += 1;有錯(cuò)嗎?的評論 (共 條)

分享到微博請遵守國家法律
晋城| 福贡县| 泾阳县| 清河县| 鄂伦春自治旗| 乐亭县| 桃源县| 兴安县| 涟水县| 长阳| 新丰县| 曲周县| 汶川县| 栾川县| 潞城市| 平塘县| 尤溪县| 景东| 军事| 新安县| 小金县| 林芝县| 苍南县| 祥云县| 金坛市| 四川省| 介休市| 崇州市| 南充市| 红桥区| 宜阳县| 石城县| 白山市| 连城县| 遂溪县| 鄂托克前旗| 墨竹工卡县| 武山县| 吐鲁番市| 南宫市| 泰宁县|