代碼如下,非常簡單的switch語句,就是想知道為什么char today='三'和?case '一'必須用‘’,用了“”和不用引用符都是錯誤的無法編譯?public class switch語句 { ? ?public static void main(String[] args) { char today='三'; switch(today){ ? ?case '一': ? ?case '三': ? ?case '五': ? ? ? ?System.out.println("包子"); ? ? ? ?break; ? ?case '二': ? ?case '四': ? ?case '六': ? ? ? ?System.out.println("油條"); ? ? ? ?break; ? ?case'日': ? ? ? ?System.out.println("主席套餐"); ? ? ? ?break; } ? ?}}
1 回答

八神花露水
TA貢獻(xiàn)35條經(jīng)驗 獲得超103個贊
因為你用的是char類型變量做為switch的判斷條件,所以case中必須為char類型的變量。因為java是強類型,字符和字符串是完全不同的兩種類型,字符串用雙引號,字符用單引號。如果兩種變量類型不同,那他們是沒法比較的。你可以把這里的 char today 改成 string today,這樣case里面的字符就可以用雙引號括起來了。
添加回答
舉報
0/150
提交
取消