如何在Java中将Date对象转换为LocalDate对象?
在Java中将Date对象转换为LocalDate对象-
使用toInstant()方法将获取的日期对象转换为Instant对象。
Instant instant = date.toInstant();
使用Instant类的 atZone()方法创建ZonedDateTime对象。
ZonedDateTime zone = instant.atZone(ZoneId.systemDefault());
最后,使用toLocalDate()方法将ZonedDateTime 对象转换为LocalDate对象。
LocalDate givenDate = zone.toLocalDate();
示例
以下示例从用户接受String格式的名称和生日,并将其转换为LocalDate对象并进行打印。
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.Instant;
import java.time.LocalDate;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.util.Date;
import java.util.Scanner;
public class DateToLocalDate {
public static void main(String args[]) throws ParseException {
//从用户读取姓名和出生日期
Scanner sc = new Scanner(System.in);
System.out.println("Enter your name: ");
String name = sc.next();
System.out.println("Enter your date of birth (dd-MM-yyyy): ");
String dob = sc.next();
//将字符串转换为日期
SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy");
Date date = formatter.parse(dob);
//将获取的Date对象转换为LocalDate对象
Instant instant = date.toInstant();
ZonedDateTime zone = instant.atZone(ZoneId.systemDefault());
LocalDate localDate = zone.toLocalDate();
System.out.println("Local format of the given date of birth String: "+localDate);
}
}输出结果
Enter your name: Krishna Enter your date of birth (dd-MM-yyyy): 26-09-1989 Local format of the given date of birth String: 1989-09-26
热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短