我最近遇到了第一個syso()charcter工作正常但在第二個syso()中打印ASCII代碼的場景。int和char操作數的三元表達式的類型是什麼?
public class Test{
public static void main(String[] args) {
char x = 'A';
char y= 'B';
int m = 0;
System.out.println(true ? x : 0);//Working fine prints A
System.out.println(true ? y : 0);//Working fine prints B
System.out.println(false ? 0 : y);//Working fine prints B
System.out.println(false ? m : x);// Here it prints 65 why ?
}
}
我真的想知道爲什麼它在第二個syso()打印ascii代碼?請幫忙
我剛剛編輯了我的代碼,並將0放在前面,但答案又與我們的假設相矛盾。 –
@Sotirios Doh。我坐在這裏看着JLS,而不是找傻瓜。 –