java8中的时间处理1 - LocalDate

简介: LocalDate 是日期的不可变类,默认格式yyyy-MM-dd. 可以用 now() 方法获取当前日期,也可以传入年月日创建实例。这个类还提供了now()的重载方法,可以传入一个时区拿到现在那个时区的日期. java.sql.Date有的功能它都有。

LocalDate 是日期的不可变类,默认格式yyyy-MM-dd. 可以用 now() 方法获取当前日期,也可以传入年月日创建实例。这个类还提供了now()的重载方法,可以传入一个时区拿到现在那个时区的日期. java.sql.Date有的功能它都有。

import java.time.LocalDate;
import java.time.Month;
import java.time.ZoneId;

/**
 * LocalDate Examples
 * @author somefuture
 *
 */
public class LocalDateExample {

	public static void main(String[] args) {
		LocalDate today = LocalDate.now();
		System.out.println("当前日期"+today);
		
		LocalDate firstDay_2014 = LocalDate.of(2014, Month.JANUARY, 1);
		System.out.println("特定日期"+firstDay_2014);
		
		
		//输入不合法参数会构造失败!这个有点意思
		//LocalDate feb29_2014 = LocalDate.of(2014, Month.FEBRUARY, 29);
		//Exception in thread "main" java.time.DateTimeException: 
		//Invalid date 'February 29' as '2014' is not a leap year因为2014年不是闰年
		
		//时区时间,可以用Asia/Shanghai或UTC+8
		LocalDate todayShanghai = LocalDate.now(ZoneId.of("Asia/Shanghai"));
		System.out.println("上海日期"+todayShanghai);

		//时区错误会报错
		//LocalDate todayIST = LocalDate.now(ZoneId.of("IST"));
		
		//从1970年创建时间
		LocalDate dateFromBase = LocalDate.ofEpochDay(365);
		System.out.println("1970年的365天后是"+dateFromBase);
		
		LocalDate hundredDay2014 = LocalDate.ofYearDay(2014, 100);
		System.out.println("2014年第100天是"+hundredDay2014);
                //2014年第100天是2014-04-10
	}
}

 

目录
相关文章
|
2月前
|
安全 Java API
时间日期API(Date,SimpleDateFormat,Calendar)+java8新增日期API (LocalTime,LocalDate,LocalDateTime)
这篇文章介绍了Java中处理日期和时间的API,包括旧的日期API(Date、SimpleDateFormat、Calendar)和Java 8引入的新日期API(LocalTime、LocalDate、LocalDateTime)。文章详细解释了这些类/接口的方法和用途,并通过代码示例展示了如何使用它们。此外,还讨论了新旧API的区别,新API的不可变性和线程安全性,以及它们提供的操作日期时间的灵活性和简洁性。
|
5月前
|
安全 Java API
深入解析 Java 8 新特性:LocalDate 的强大功能与实用技巧
深入解析 Java 8 新特性:LocalDate 的强大功能与实用技巧
77 1
|
6月前
|
Java API
Java一分钟之-Java日期与时间API:LocalDate, LocalDateTime
【5月更文挑战第13天】Java 8引入`java.time`包,改进日期时间API。`LocalDate`代表日期,`LocalDateTime`包含日期和时间。本文概述两者的基本用法、常见问题及解决策略。创建日期时间使用`of()`和`parse()`,操作日期时间有`plusDays()`、`minusMonths()`等。注意点包括:设置正确的`DateTimeFormatter`,考虑闰年影响,以及在需要时区信息时使用`ZonedDateTime`。正确使用这些类能提升代码质量。
124 3
Java String、Date、Calendar、LocalDate和LocalDateTime互转
Java String、Date、Calendar、LocalDate和LocalDateTime互转
118 0
Java8 LocalDate日期时间类型方法使用详情【精品】
Java8 LocalDate日期时间类型方法使用详情【精品】
|
Java
java时间换算(BJU转UTC)
UTC是世界协调时,BJT是北京时间,UTC时间相当于BJT减去8。现在,你的程序要读入一个整数,表示BJT的时和分。整数的个位和十位表示分,百位和千位表示小时。如果小时小于10,则没有千位部分;如果小时是0,则没有百位部分;如果分小于10分,需要保留十位上的0。如1124表示11点24分,而905表示9点5分,36表示0点36分,7表示0点7分。
299 0
java时间换算(BJU转UTC)
|
Java
java8将日期格式yyyyMM转换为LocalDate
java8将日期格式yyyyMM转换为LocalDate
321 0
|
安全 Java API
【Java 8 新特性】Java LocalDate 详解
【Java 8 新特性】Java LocalDate 详解
351 0
|
Java
java判断当前时间是否在某个时间区间内(可精确到毫秒)
java判断当前时间是否在某个时间区间内(可精确到毫秒)
849 0
java判断当前时间是否在某个时间区间内(可精确到毫秒)
|
算法 搜索推荐 Java
线性时间选择(Top K)问题(Java)
线性时间选择(Top K)问题(Java)
257 0
线性时间选择(Top K)问题(Java)