组内同学分别使用Calendar和Date类取得当前时间,并以以下格式输出: 2022-10-18 12:00:02 星期二
时间: 2024-10-18 14:05:22 浏览: 28
在Java中,你可以使用`java.util.Calendar`类或`java.time.LocalDate`和`LocalTime`类来获取当前日期和时间。这里我们先介绍如何使用`Calendar`:
```java
import java.util.Calendar;
public class Main {
public static void main(String[] args) {
// 获取Calendar实例并设置为本地当前时间
Calendar calendar = Calendar.getInstance();
// 设置日期部分(年、月、日)
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1; // 因为get返回的是从0开始计数的月份
int day = calendar.get(Calendar.DAY_OF_MONTH);
// 设置时间部分(小时、分钟、秒)
int hour = calendar.get(Calendar.HOUR_OF_DAY);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
// 格式化日期和时间字符串
String formattedDate = String.format("%04d-%02d-%02d", year, month, day);
String formattedTime = String.format("%02d:%02d:%02d", hour, minute, second);
// 输出
System.out.println(formattedDate + " " + formattedTime + " 星期" + getDayOfWeek(calendar));
}
private static String getDayOfWeek(Calendar calendar) {
int dayOfWeekIndex = calendar.get(Calendar.DAY_OF_WEEK); // 0表示周日,1表示周一等
return DayOfWeek.values()[dayOfWeekIndex].name(); // 返回英文名称
}
}
```
如果你想要使用`java.time`包,可以这样做:
```java
import java.time.LocalDate;
import java.time.LocalTime;
import java.time.DayOfWeek;
public class Main {
public static void main(String[] args) {
// 使用LocalDateTime获取当前日期和时间
LocalDate date = LocalDate.now();
LocalTime time = LocalTime.now();
// 格式化日期和时间字符串
String formattedDate = date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
String formattedTime = time.format(DateTimeFormatter.ofPattern("HH:mm:ss"));
// 输出
System.out.println(formattedDate + " " + formattedTime + " " + DayOfWeek.from(date.atStartOfDay()).name());
}
}
```
阅读全文