switch舉例:
根據輸入的年月日計算該天是這一年第幾天。
packageweizhang;
importjava.util.Scanner;
publicclassDemo2 {
publicstaticvoidmain(String[]args) {
intyear,month,day;//年月日變量
Scannerinput=newScanner(System.in);
System.out.print("請輸入年-月-日:");
Stringline=input.next();
String[]ss=line.split("-");
year=Integer.parseInt(ss[0]);
month=Integer.parseInt(ss[1]);
day=Integer.parseInt(ss[2]);
intn=day;//第幾天,初始為日的天數
switch(month-1){
//當month為12時,表示已過了11個完整的月份,
//因此此處作為入口,一直到case1為止,正好n加了11個月天數
case11:n+=30;
case10:n+=31;
case9:n+=30;
case8:n+=31;
case7:n+=31;
case6:n+=30;
case5:n+=31;
case4:n+=30;
case3:n+=31;
case2:n+=28;
case1:n+=31;
}
//如果月份大于3,2月天數應加上28天了,還需要判定該年是否是閏年,若是則需要多加1天
if(month>3){
if(month%4==0&&month%100!=0||month%400==0){
n+=1;
}
}
System.out.println(line+"是"+year+"第"+n+"天");
}
}
運行的結果如下: