java如何获取年月日
获取当前年月日
使用 java.time.LocalDate 类可以轻松获取当前日期。LocalDate.now() 方法返回当前系统日期,默认时区为系统时区。
import java.time.LocalDate;
public class GetCurrentDate {
public static void main(String[] args) {
LocalDate currentDate = LocalDate.now();
System.out.println("Current Date: " + currentDate);
}
}
从日期中提取年月日
LocalDate 类提供了 getYear(), getMonthValue(), 和 getDayOfMonth() 方法来分别获取年、月、日。

import java.time.LocalDate;
public class ExtractDateComponents {
public static void main(String[] args) {
LocalDate date = LocalDate.now();
int year = date.getYear();
int month = date.getMonthValue();
int day = date.getDayOfMonth();
System.out.println("Year: " + year + ", Month: " + month + ", Day: " + day);
}
}
使用 SimpleDateFormat 格式化日期
如果需要将日期格式化为特定字符串,可以使用 SimpleDateFormat 类。以下示例将日期格式化为 "yyyy-MM-dd" 格式。
import java.text.SimpleDateFormat;
import java.util.Date;
public class FormatDate {
public static void main(String[] args) {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date();
String formattedDate = formatter.format(date);
System.out.println("Formatted Date: " + formattedDate);
}
}
从字符串解析日期
使用 LocalDate.parse() 方法可以从字符串解析日期。字符串格式需符合 ISO-8601 标准(如 "yyyy-MM-dd")。

import java.time.LocalDate;
public class ParseDate {
public static void main(String[] args) {
String dateString = "2023-10-05";
LocalDate parsedDate = LocalDate.parse(dateString);
System.out.println("Parsed Date: " + parsedDate);
}
}
使用 Calendar 类获取年月日
在较旧的 Java 版本中,可以使用 Calendar 类来获取年月日。以下示例展示如何使用 Calendar 获取当前日期的年、月、日。
import java.util.Calendar;
public class GetDateWithCalendar {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1; // 月份从0开始
int day = calendar.get(Calendar.DAY_OF_MONTH);
System.out.println("Year: " + year + ", Month: " + month + ", Day: " + day);
}
}
自定义日期格式
如果需要自定义日期格式,可以使用 DateTimeFormatter 类。以下示例将日期格式化为 "dd/MM/yyyy" 格式。
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class CustomDateFormat {
public static void main(String[] args) {
LocalDate date = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
String formattedDate = date.format(formatter);
System.out.println("Formatted Date: " + formattedDate);
}
}






