請問這代碼出了什么問題,新人不懂怎么找出為什么錯了
import java.util.Scanner;
public class test1{
public static void main(String[]args){
char weekSecond;
Scanner input=new Scanner(System.in);
System.out.println("請輸入第一個字母");
String letter=input.next();
if(letter.length()==1){
char weekFirst=letter.charAt(0);
switch(weekFirst){
case'm':
case'M':
System.out.println("星期一");
break;
case't':
case'T':
System.out.println("由于星期二和星期四都是T開頭,請繼續(xù)輸入第二個字母");
letter=input.next();
if(letter.length()==1){
weekSecond=letter.charAt(0);
if(weekSecond=='U'||weekSecond=='u');{
System.out.println("星期二");
break;
}else if(weekSecond=='H'||weekSecond=='h'){
System.out.println("星期四");
break;
}else{????????????????????????????????????????????????//這里的else有錯,不懂
System.out.println("輸入第二個錯誤,請重新輸入");
break;}
else{????????????????????????????????????????????//這里的else有錯,不懂
System.out.println("輸入超過一個字母,請重新輸入");
break;
}
}
case'w':
case'W':
System.out.println("星期三");
break;
case'f':
case'F':
System.out.println("星期五");
break;
case's':
case'S':
System.out.println("星期六和星期天都是s開頭,需要輸入第二個字母");
letter=input.next();
if(letter.length()==1){
weekSecond=letter.charAt(0);
if(weekSecond=='A'||weekSecond=='a'){
System.out.println("星期六");
break;
}
else if(weekSecond=='U'||weekSecond=='u'){
System.out.println("星期天");
break;
}
else{
System.out.println("輸入錯誤,請重新輸入");
}
else{????????????????????????????????????????????????//這里的else有錯,不懂
System.out.println("輸入超過一個字母,請重新輸入");
break;
}
}
default:
System.out.println("默認輸出,無法識別,請重新輸入");
break;
}else{
System.out.println("最后輸入錯誤,只能輸入一個字母,請重新輸入");
}
}
}
}
2017-05-17
package com.xingzhuang;
import java.util.Scanner;
public class test1{
?? ?public static void main(String[]args){
?? ??? ?char weekSecond;
?? ??? ?Scanner input=new Scanner(System.in);
??????? System.out.println("請輸入第一個字母");
??????? String letter=input.next();
??????? if(letter.length()==1){
?????? ??? ?
?????? ??? ?char weekFirst=letter.charAt(0);
?????? ??? ?switch(weekFirst){
?????? ??? ?case'm':
??????? case'M':
?????? ??? ?System.out.println("星期一");
?????? ??? ?break;
??????? case't':
??????? case'T':
?????? ??? ?System.out.println("由于星期二和星期四都是T開頭,請繼續(xù)輸入第二個字母");
?
?????? ??? ?letter=input.next();
?????? ??? ?if(letter.length()==1){
?????? ??? ??? ?weekSecond=letter.charAt(0);
?????? ??? ??? ?if(weekSecond=='U'||weekSecond=='u'){
?? ?
?????? ??? ??? ??? ?System.out.println("星期二");
?????? ??? ??? ??? ?break;
?????? ??? ??? ?}else if(weekSecond=='H'||weekSecond=='h'){
?? ?
?????? ??? ??? ??? ?System.out.println("星期四");
?? ?
?????? ??? ??? ??? ?break;
?????? ??? ??? ?}else{??????????????????????????????????????????????? //這里的else有錯,不懂
?????? ??? ??? ??? ?System.out.println("輸入第二個錯誤,請重新輸入");
?????? ??? ??? ??? ?break;
?????? ??? ??? ??? ?}
?????? ??? ?} else{??????????????????????????????????????????? //這里的else有錯,不懂
?????? ??? ??? ?System.out.println("輸入超過一個字母,請重新輸入");
?????? ??? ??? ?break;
?????? ??? ?}
??????? case'w':
??????? case'W':
?????? ??? ?System.out.println("星期三");
?????? ??? ?break;
??????? case'f':
??????? case'F':
?????? ??? ?System.out.println("星期五");
?????? ??? ?break;
??????? case's':
??????? case'S':
?????? ??? ?System.out.println("星期六和星期天都是s開頭,需要輸入第二個字母");
?????? ??? ?letter=input.next();
?????? ??? ?if(letter.length()==1){
?????? ??? ??? ?weekSecond=letter.charAt(0);
?????? ??? ??? ?if(weekSecond=='A'||weekSecond=='a'){
?????? ??? ??? ??? ?System.out.println("星期六");
?????? ??? ??? ??? ?break;
?????? ??? ??? ?}
?????? ??? ??? ?else if(weekSecond=='U'||weekSecond=='u'){
?????? ??? ??? ??? ?System.out.println("星期天");
?????? ??? ??? ??? ?break;
?????? ??? ??? ?}else{
?????? ??? ??? ??? ?System.out.println("輸入錯誤,請重新輸入");
?????? ??? ??? ?}
?????? ??? ?}else{??????????????????????????????????????????????? //這里的else有錯,不懂
?????? ??? ??? ??? ?System.out.println("輸入超過一個字母,請重新輸入");
?????? ??? ??? ??? ?break;
?????? ??? ??? ?}
??????? default:
?????? ??? ?System.out.println("默認輸出,無法識別,請重新輸入");
?????? ??? ?break;
?????? ??? ?}
?????? ?
?????? ?
?????? ??? ?}else{
?????? ??? ??? ?System.out.println("最后輸入錯誤,只能輸入一個字母,請重新輸入");
?????? ??? ?}
?? ?}
?? ?
}
2017-05-17
第一處if(weekSecond=='U'||weekSecond=='u'){} 去掉 ;??? 第二次else 前面加{?
2017-05-17
一個if 對應一個else? 你上面已經(jīng)有else了