要求输入一个代表年月日的8位整数,
- 计算出其上一天和下一天是什么日期
- 2月分闰年和平年
这里用的是if-else分支结构分情况计算上一天和下一天的日期
public class Demo {
public static void main(String[] args) {
/*System.out.println("请输入一个代表年的4位数:");
Scanner scan = new Scanner(System.in);
int year = scan.nextInt();
System.out.println("请输入一个代表月的2位数:");
int month = scan.nextInt();
System.out.println("请输入一个代表日的2位数:");
int day = scan.nextInt();
if(month ==2 && day ==28) {
month++;
day = 01;
}
if(day == 31) {
month++;
day = 1;
}else {
day++;
}
if(month == 12 && day == 31) {
year++;
month = 01;
day = 01;
}
String lastDay = year+""+month+day;
System.out.println("下一天是:"+lastDay);*/
System.out.println("请输入一个代表年月日的8位数:");
Scanner scan = new Scanner(System.in);
int year = scan.nextInt();
int month = scan.nextInt();
int day = scan.nextInt();
if(month == 1 ) {
if(day == 1) {
System.out.println("上一天:"+(year-1)+"年"+(month-1)+"月"+"30日");
System.out.println("下一天"+year+"年"+month+"月"+(day+1)+"日");
}else if(day == 31) {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天"+year+"年"+(month+1)+"月"+"1日");
}else {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天:"+year+"年"+month+"月"+(day+1)+"日");
}
}else if(month == 4||month == 6|| month == 9 ||month == 11) {
if(day == 1) {
System.out.println("上一天:"+(year-1)+"年"+month+"月"+"31日");
System.out.println("下一天"+year+"年"+month+"月"+(day+1)+"日");
}else if(day == 30) {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天"+year+"年"+(month+1)+"月"+"1日");
}else {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天:"+year+"年"+month+"月"+(day+1)+"日");
}
}else if(month == 2) {
if(year % 4 == 0 && year % 100 !=0 ||year % 400 ==0 ) {
if(day == 1) {
System.out.println("上一天:"+year+"年"+(month-1)+"月"+"31日");
System.out.println("下一天"+year+"年"+month+"月"+(day+1)+"日");
}else if(day == 29) {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天"+year+"年"+(month+1)+"月"+"1日");
}else {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天"+year+"年"+month+"月"+(day+1)+"日");
}
}else {
if(day == 1) {
System.out.println("上一天:"+year+"年"+(month-1)+"月"+"31日");
System.out.println("下一天"+year+"年"+month+"月"+(day+1)+"日");
}else if(day == 28) {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天"+year+"年"+(month+1)+"月"+"1日");
}else {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天"+year+"年"+month+"月"+(day+1)+"日");
}
}
}else if(month == 3) {
if(day == 1) {
if(year % 4 ==0 && year % 100 !=0||year % 400 ==0) {
System.out.println("上一天:"+year+"年"+(month-1)+"月"+"29日");
System.out.println("下一天:"+year+"年"+month+"月"+(day+1)+"日");
}else {
System.out.println("上一天:"+year+"年"+(month-1)+"月"+"28日");
System.out.println("下一天:"+year+"年"+month+"月"+(day+1)+"日");
}
}else if(day == 31) {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天:"+year+"年"+(month+1)+"月"+"1日");
}else {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天:"+year+"年"+month+"月"+(day+1)+"日");
}
}else if(month == 5 || month == 7 || month == 10) {
if(day == 1) {
System.out.println("上一天:"+year+"年"+(month-1)+"月"+"30日");
System.out.println("下一天:"+year+"年"+month+"月"+(day+1)+"日");
}else if(day == 31) {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天:"+year+"年"+(month+1)+"月"+"1日");
}else {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天:"+year+"年"+month+"月"+(day+1)+"日");
}
}
else if(month == 12) {
if(day == 1) {
System.out.println("上一天:"+year+"年"+(month-1)+"月"+"30日");
System.out.println("下一天:"+year+"年"+month+"月"+(day+1)+"日");
}else if(day == 31) {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天:"+(year+1)+"年"+"1月"+"1日");
}else {
System.out.println("上一天:"+year+"年"+month+"月"+(day-1)+"日");
System.out.println("下一天:"+year+"年"+month+"月"+(day+1)+"日");
}
}
}
}