认真阅读完这篇文章熟练掌握Java1.8 日期的常见方法
【摘要】 认真阅读完这篇文章熟练掌握Java1.8 日期的常见方法
在Java8以前,Date日期API对我们非常的不友好,它无法表示日期,只能以毫秒的精度来表示时间,并且可以修改,他的线程还不是安全的。所以Java8中引入了全新的日期和时间API就是为了解决这一问题。
创建日期的三种方法
LocalTime 本地时间
LocalDate 本地日期
LocalDateTime 本地时间和日期
举例分析:LocalTime 本地时间
获取当前时间
package DATA;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
/**
* @author yeqv
* @program A2
* @Classname D3
* @Date 2022/2/10 11:31
* @Email w16638771062@163.com
*/
public class D3 {
public static void main(String[] args) {
//获取当前时间
LocalTime localTime = LocalTime.now();
System.out.println(localTime);
//格式化输出当前时间
var dt = DateTimeFormatter.ofPattern("HH:mm:ss");
var a = dt.format(localTime);
System.out.println(a);
//分别获取时分秒
var b = localTime.getHour();
var c = localTime.getMinute();
var d = localTime.getSecond();
System.out.println(b + "时" + c + "分" + d + "秒");
}
}
运行结果:
案例二:LocalDate 本地时间
package DATA;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
/**
* @author yeqv
* @program A2
* @Classname D4
* @Date 2022/2/10 11:54
* @Email w16638771062@163.com
*/
public class D4 {
public static void main(String[] args) {
//获取当前日期
LocalDate localDate = LocalDate.now();
var a = DateTimeFormatter.ofPattern("yyyy年MM月dd日");
System.out.println(a.format(localDate));
//分别获取年月日
var b = localDate.getYear();
var c = localDate.getDayOfMonth();
var d = localDate.getMonthValue();
System.out.println(b);
System.out.println(c);
System.out.println(d);
}
}
运行结果:
案例三:LocalDateTime 本地时间和日期
package DATA;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
/**
* @author yeqv
* @program A2
* @Classname D5
* @Date 2022/2/10 14:12
* @Email w16638771062@163.com
*/
public class D5 {
public static void main(String[] args) {
//获取当前时间和日期
LocalDateTime localDateTime = LocalDateTime.now();
System.out.println(localDateTime);
//格式化输出当前时间和日期
var dt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
var a = dt.format(localDateTime);
System.out.println(a);
//分别获取时分秒和年月日
var b = localDateTime.getHour();
var c = localDateTime.getMinute();
var d = localDateTime.getSecond();
System.out.println(b + "时" + c + "分" + d + "秒");
var E = localDateTime.getYear();
var F = localDateTime.getDayOfMonth();
var G = localDateTime.getMonthValue();
System.out.println(E + "年" + F + "月" + G + "日");
}
}
运行结果:
Timezones 设置时区
package DATA;
import java.time.DayOfWeek;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
/**
* @author yeqv
* @program A2
* @Classname D2
* @Date 2022/2/10 11:08
* @Email w16638771062@163.com
*/
public class D2 {
public static void main(String[] args) {
//美国纽约时间
ZoneId zid = ZoneId.of("America/New_York");
LocalDateTime id = LocalDateTime.now(zid);
var dt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
System.out.println(id.format(dt));
System.out.println(id.toLocalDate());
System.out.println(id.toLocalTime());
}
}
运行结果:
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)