qq_somethingfor_13843548
2016-09-01 22:56:49
????System.out.println('0');它輸出的值是0
但是System.out.println('0'+'0');的值是96?????怎么回事啊
4 回答

taoy
TA貢獻(xiàn)10條經(jīng)驗(yàn) 獲得超6個(gè)贊
這里面的+號(hào)會(huì)自動(dòng)把兩個(gè)字符類型升級(jí)為int類型,而在int類型中字符‘0’的值是48,所以就變成了48+48.

ziom
TA貢獻(xiàn)948條經(jīng)驗(yàn) 獲得超1109個(gè)贊
char會(huì)做運(yùn)算,如果要輸出00, 可以用雙引號(hào)包裹,也就是把他們變成字符串

摩訶迦葉
TA貢獻(xiàn)146條經(jīng)驗(yàn) 獲得超54個(gè)贊
那叫ascii碼,'0'對(duì)應(yīng)的數(shù)字是48,'0'是一個(gè)字符,在System.out.println中沒(méi)有輸出兩個(gè)字符相加這種方式,所以他們被自動(dòng)轉(zhuǎn)型成了兩個(gè)int,System.out.println(48+48)所以輸出96。 如果你要想輸出00,就改成這樣System.out.println("0"+"0");字符串是可以相加的
添加回答
舉報(bào)
0/150
提交
取消