1.假如你活到一百岁,请算出你现在还剩下多少天2.给出任意一个年月日得到该天是星期几(格式:星期一、星期二等)请写出以上Java程序并说明为什么
时间: 2024-09-26 14:09:53 浏览: 37
如果我现在活到一百岁,我们假设当前日期已经过去了,我们可以简单地从我的年龄减去出生日期的天数来计算剩余的天数。不过这里需要注意的是,实际的算法会更复杂些,因为要考虑闰年的情况。在Java中,你可以这样做:
```java
import java.time.LocalDate;
import java.time.Period;
public class AgeCalculator {
public static void main(String[] args) {
int currentAge = 100; // 假设我活到了100岁
LocalDate birthDate = LocalDate.of(1970, 1, 1); // 用一个固定的出生日期举例
Period agePeriod = Period.between(birthDate, LocalDate.now());
long totalDaysLived = agePeriod.getDays();
long remainingDays = currentAge * 365 - totalDaysLived; // 简单计算,忽略闰年因素
System.out.println("如果你活到100岁,你还剩下大约 " + remainingDays + " 天");
}
}
```
对于给定任意一个年月日判断星期几,可以使用`java.time`包下的`DayOfWeek`类,如下:
```java
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAdjusters;
public class DateToWeekday {
public static void main(String[] args) {
String inputDateString = "2023-04-08"; // 输入日期
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date = LocalDate.parse(inputDateString, formatter);
DayOfWeek dayOfWeek = date.getDayOfWeek();
switch (dayOfWeek) {
case MONDAY:
System.out.println("星期一");
break;
case TUESDAY:
System.out.println("星期二");
break;
// 其他case...
default:
System.out.println(dayOfWeek);
}
}
}
```
这个程序首先解析输入的日期字符串,然后获取其对应的`DayOfWeek`,再通过`switch`语句输出对应的结果。
阅读全文