swich判断年份月份LocalDate
import java.time.LocalDate;
import java.util.Scanner;
public class Swich {
public static void main(String[] args) {
int y = 2022;
int m = 2;
int days = switch (m) {
case 2 -> {
yield LocalDate.of(y, m, 1).isLeapYear() ? 29 : 28;
}
case 4, 6, 9, 11 -> 30;
default -> 31;
};
System.out.printf("%d年%d月有%d天", y, m, days);
}
}
低端写法
int y = 2021;
int m = 4;
int days = switch (m) {
case 2 -> y % 400 == 0 || y % 4 == 0 && y % 100 != 0 ? 29 : 28;
case 4, 6, 9, 11 -> 30;
default -> 31;
};
System.out.printf("%d年%d月有%d天", y, m, days);