我目前正在從一本書中學習java,一個項目在輸入月份數後輸出一個月的日期和月份名稱。我想知道是否有更好的方式來設置我的if語句,而不是我已經做了什麼。更好的方式形成這個if語句?
PS:控制檯閱讀器只是一個包含的類,可以輕鬆地從用戶控制檯獲取輸入。
public class Project13 {
public static void main(String[] args) {
ConsoleReader console = new ConsoleReader(System.in);
System.out.println("Enter a month you would like to evaluate (by number):");
int month = console.readInt();
int days = 0;
String monthout = "Month";
String out = "Yes";
if(month == 1){
days = 31;
monthout = "January";
out = "There are " + days + " days in " + monthout;
}else if(month == 2){
System.out.println("Is it a leap year? Yes or No:");
String leap = console.readLine();
if(leap.equalsIgnoreCase("yes")){
days = 29;
monthout = "February";
out = "There are " + days + " days in " + monthout;
}else if(leap.equalsIgnoreCase("no")){
days = 28;
monthout = "February";
out = "There are " + days + " days in " + monthout;
}else{
out = "Something went wrong, please try again";
}
}else if(month == 3){
days = 31;
monthout = "March";
out = "There are " + days + " days in " + monthout;
}else if(month == 4){
days = 30;
monthout= "April";
out = "There are " + days + " days in " + monthout;
}else if(month == 5){
days = 31;
monthout = "May";
out = "There are " + days + " days in " + monthout;
}else if(month == 6){
days = 30;
monthout = "June";
out = "There are " + days + " days in " + monthout;
}else if(month == 7){
days = 31;
monthout = "July";
out = "There are " + days + " days in " + monthout;
}else if(month == 8){
days = 31;
monthout = "August";
out = "There are " + days + " days in " + monthout;
}else if(month == 9){
days = 30;
monthout = "September";
out = "There are " + days + " days in " + monthout;
}else if(month == 10){
days = 31;
monthout = "October";
out = "There are " + days + " days in " + monthout;
}else if(month == 11){
days = 30;
monthout = "November";
out = "There are " + days + " days in " + monthout;
}else if(month == 12){
days = 31;
monthout = "December";
out = "There are " + days + " days in " + monthout;
}else if(month > 12){
out = "Your month input was not valid. Please try again.";
}
System.out.println(out);
}
}
不一定好,但你可以嘗試一個'開關case'聲明:http://docs.oracle.com /javase/tutorial/java/nutsandbolts/switch.html – Bucket