最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(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ò)嗎?的評論 (共 條)

分享到微博請遵守國家法律
射洪县| 康平县| 蒲城县| 南皮县| 科技| 都匀市| 炎陵县| 常州市| 河曲县| 武威市| 浦北县| 乡宁县| 隆子县| 肥西县| 黔南| 洪湖市| 通化县| 澳门| 湘潭市| 潢川县| 大同市| 益阳市| 若尔盖县| 合江县| 翁牛特旗| 安岳县| 金湖县| 金昌市| 台安县| 洞口县| 布尔津县| 郓城县| 类乌齐县| 招远市| 彭州市| 灵石县| 星子县| 赤壁市| 堆龙德庆县| 乌什县| 古蔺县|