關于輸出的問題
final?char?nan='男'; ????final?char?nv='女'; System.out.println(nan+nv);
final?char?nan='男'; ????final?char?nv='女'; System.out.println(nan+""+nv);
為什么上面那個輸出的是52906的數字下面那段代碼輸出就正確了?
final?char?nan='男'; ????final?char?nv='女'; System.out.println(nan+nv);
final?char?nan='男'; ????final?char?nv='女'; System.out.println(nan+""+nv);
為什么上面那個輸出的是52906的數字下面那段代碼輸出就正確了?
2015-02-21
舉報
2015-02-21
char類型進行+-運算的話,返回值是int類型的.
已知 '男' 的unicode是30007,'女'的unicode是22899。
加起來后就是52906了。
nan(char) + ""(String) = String
String+nv(char) = String
所以經過第一個加號后,就變成了 "男" + nv。
最后就是“男女”了。