JAVA学习日记:新日期时间类

本节课我学习的主要内容有:

1.新日期时间类与旧日期时间类的区别
2.新日期时间类

新日期时间类与旧日期时间类的区别:

	过去版本日期时间API的局限性:
  		老版本的日期时间类是直接封装两部分内容:时间、日期。
  		封装的是一个距离1970年至今的毫秒数,应用不直观,不方便。
  		时间、日期数据操作起来相对繁琐、复杂。
  		它们不是线程安全的。	
  	
  	新版本日期时间API的局限性:
  		能够很好的区分处理计算机使用、人使用。
 		无缝支持老旧日期时间数据到新日期时间数据API的互相转换。
  		能够支持链式调用(但不推荐)。
  		新版本API不提供公共的构造方法来实例化日期、时间对象。而是通过
  		提供静态工程方法给日期、时间实例实例化。
  
  	格式标准:ISO-8601
 		完整日期时间格式:	[date]T[time]
 		日期格式:	year-month-day
  		时间格式:  	hour:minute:second

新日期时间类:

	新日期API:
  		LocalDate类:日期类。
  			
  	新时间API:
  		LocalTime类:时间类。
  
  	其他补充API:
  		LocalDateTime:日期时间类。
 		ZonedDateTime:日期时间时区类。

Test01类(测试新日期时间类的用法):

package LessonForLocalDateTime;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.Month;
import java.time.ZonedDateTime;

public class Test01 
{
	public static void main(String[] args) 
	{
		//用新的日期类
		LocalDate date = LocalDate.now();
		System.out.println(date);//会默认调用打印对象的toString方法。
		System.out.println(date.getYear()+"-"+date.getMonthValue()+"-"+date.getDayOfMonth()+"-"+date.getDayOfWeek().getValue());
		System.out.println(date.getYear()+"-"+date.getMonth()+"-"+date.getDayOfMonth()+"-"+date.getDayOfWeek());
		
		//用新的时间类
		LocalTime time = LocalTime.now();
		System.out.println(time);//.xxx是默认输出的毫秒数。
		System.out.println(time.getHour()+":"+time.getMinute()+":"+time.getSecond());
		
		//新日期时间类
		LocalDateTime dt = LocalDateTime.now();
		System.out.println(dt);
		
		//创建一个指定日期时间的对象
		LocalDate date2 = LocalDate.of(2020, 11, 11);
		LocalDate date3 = LocalDate.of(2020, Month.OCTOBER, 11);
		LocalTime time2 = LocalTime.of(19, 29, 3);
		System.out.println("指定日期:"+date2+" 指定时间:"+time2);
		System.out.println("指定日期(用了枚举):"+date3+" 指定时间:"+time2);
			
		ZonedDateTime adt = ZonedDateTime.now();
		System.out.println(adt);
	}
}

运行结果:

2020-11-10
2020-11-10-2
2020-NOVEMBER-10-TUESDAY
19:31:50.433
19:31:50
2020-11-10T19:31:50.433
指定日期:2020-11-11 指定时间:19:29:03
指定日期(用了枚举)2020-10-11 指定时间:19:29:03
2020-11-10T19:31:50.433+08:00[Asia/Shanghai]
本篇部分文字来源于:
咕嘟咖啡杨海滨老师 — 《java编程语言高级特性》
在这里十分感谢老师能够给我带来学习的激情。

2020.11.10
本文章是本人学习笔记,不进行任何商用所以不支持转载请理解!也请别拿去商用!
如果觉得对你有帮助那么欢迎你随时来回顾!
只为记录本人学习历程。
毕
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值