为了账号安全,请及时绑定邮箱和手机立即绑定

各位大神,为什么我这个代码输入一,二这样的字符直接跳到default了,输入1,2,3这样的字符是正确的

import java.util.Scanner;

public class Lx{

public static void main(String[] args){

Scanner console = new Scanner(System.in);

System.out.print("请输入星期:");

char day = console.nextLine().charAt(0);

if(isHasAirLine(day)){

System.out.println("有航班");

}else{

System.out.println("没有航班");

}

}

public static boolean isHasAirLine(char day){

boolean[] ch = {false,true,false,true,false,true,false};

int d =parseDay(day);

boolean c = ch[d];

return c;

}

public static int parseDay(char day){

int d = 0;

switch(day){

case'日':

day = 0;

break;

case '一':case '1':

day = 1;

break;

case '二':case '2':

day = 2;

break;

case '三':case '3':

day = 3;

break;

case '四':case '4':

day = 4;

break;

case '五':case '5':

day = 5;

break;

case '六':case '6':

day = 6;

break;

default:

throw new IllegalArgumentException("星期错误");

}

return d;

}


正在回答

2 回答

你是不是应该把变量换一换?
isHasAirLine(char day)  参数变量和赋值变量。

0 回复 有任何疑惑可以回复我~

类型不对呀。一、二是string类型,1、2、3可以是char类型。

0 回复 有任何疑惑可以回复我~
#1

丫丫lj 提问者

不是呀,'一','二'当做字符的啊
2015-07-31 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

各位大神,为什么我这个代码输入一,二这样的字符直接跳到default了,输入1,2,3这样的字符是正确的

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信