问答详情
源自:4-6 Java条件语句之 switch

switch条件语句编程Invalid character constant错误

package com.imooc;


public class Demo1040602 {

public static void main(String[] args){

char detion='广州';

switch(detion){

case "广州":

System.out.println("坐长途汽车去");

break;

case "上海":

System.out.println("坐高铁去");

break;

case "北京":

System.out.println("坐飞机去");

break;

default:

System.out.println("坐火箭去");

}

}

}

char detion='广州';       其中这一句是错误的


提问者:fsnh 2016-01-11 10:14

个回答

  • jun_zhao
    2016-01-11 10:43:35
    已采纳

    char是可容纳单个字符的数据类型,‘广州’已经超出了char定义的范围,故把char detion='广州'改为String detion='广州'即可。

  • fsnh
    2016-01-11 11:22:29

    不一一回复了,你们的回答都很好。不回复的我已经赞了一个

  • fsnh
    2016-01-11 11:18:12

    感谢各位的热心解答

  • 慕虎2321717
    2016-01-11 10:48:26

    jdk1.7以下的switch条件语句都不可以是String类型


  • 烟斗0
    2016-01-11 10:35:28

    把char detion='广州'改为String detion="广州"

  • 少年回首怎奈梦已空0
    2016-01-11 10:32:58

    char detion='广州'; 换成 String detion = "广州";

  • 慕虎2321717
    2016-01-11 10:28:28

    一个汉字是两个字节,'广州'是四个字节,已经超出char的范围