LocalDateTime常用API
所属分类 java
浏览量 61
1、获取LocalDateTime实例
public static LocalDateTime now():从指定时区的系统时钟获取当前的日期时间。
public static LocalDateTime now(Clock clock) 从指定的时钟获取当前的日期时间,clock不能为空。
public static LocalDateTime of(LocalDate date, LocalTime time)从日期和时间获取一个 LocalDateTime的实例。
public static LocalDateTime of(int year, Month month, int dayOfMonth, int hour, int minute, int second) 从年,月,日,小时,分钟和秒获得LocalDateTime的实例,将纳秒设置为零。
year - 从默认的 MIN_YEAR到 MAX_YEAR 的年份
month - 代表月份的1-12,不为空
dayOfMonth - 代表月份中1-31,以月份中天数大小为准。
hour - 从0到23的小时。
minute - 从0到59的分钟。
second - 从0到59的秒其他的同上
2、获取年月日信息
public int getDayOfYear() 获得日期字段 (获得是年份中的第几天) 例如 2020/12/3 获得2020的第338天。
public int getDayOfMonth() 获取月份字段 (获取月份中的第几天) 例如 2020/12/3 获得12月的第3天。
public DayOfWeek getDayOfWeek()获取星期几字段,这是一个枚举DayOfWeek 。(获得整个星期的星期几)例如 2020/12/3 获得这周的星期四。
public int getYear()获取年份字段。
public Month getMonth()使用Month枚举获取月份字段(获得不是数组而是英文单词)。
public int getHour()获取时间字段。
public int getMinute()获取分钟字段。
public int getSecond() 获得第秒的字段。
3、修改时间
public LocalDateTime withYear(int year)返回此年份变更的LocalDateTime的副本。 时间不影响计算,结果将相同。 如果一年中的日期无效,它将被更改为该月的最后一个有效日期。
public LocalDateTime withMonth(int month)返回此年份更改的LocalDateTime的副本。 时间不影响计算,结果将相同。 如果一年中的日期无效,它将被更改为该月的最后一个有效日期。
public LocalDateTime withDayOfMonth(int dayOfMonth)返回这个LocalDateTime的副本,并更改日期。 如果结果LocalDateTime无效,则会抛出异常。 时间不影响计算,结果将相同。
public LocalDateTime withDayOfYear(int dayOfYear)返回此LocalDateTime的副本。 如果得到LocalDateTime是无效的,则抛出异常。
public LocalDateTime withHour(int hour)返回此日期值更改的LocalDateTime的副本。
public LocalDateTime withMinute(int minute)返回这个LocalDateTime的副本,小时值更改。
public LocalDateTime withSecond(int second)返回这个LocalDateTime的副本,并更改秒数值。
4、增加时间
public LocalDateTime plusYears(long years)返回这个LocalDateTime的副本,并以指定的时间段添加。
该方法通过三个步骤将指定的数量添加到年份字段:
将输入年份添加到年份字段
检查结果日期是否无效
如果有必要,将月份调整到最后一个有效日期
例如,2008-02-29(闰年)加上一年将导致无效日期2009-02-29(标准年)。 而不是返回无效结果,而是选择2009-02-28的最后一个有效日期。
public LocalDateTime plusMonths(long months)返回这个LocalDateTime的副本,其中指定的时间段以月为单位。
此方法通过三个步骤将指定的数量添加到月份字段:
将输入的月份添加到月份字段
检查结果日期是否无效
如果有必要,将月份调整到最后一个有效日期
例如,2007-03-31加上一个月将导致无效日期2007-04-31。 而不是返回无效结果,而是选择2007-04-30的最后一个有效日期。
public LocalDateTime plusWeeks(long weeks)返回这个LocalDateTime的副本,其中指定的周期以周为单位。
该方法将指定的数量以周为单位,根据需要增加月份和年份字段的日期字段,以确保结果保持有效。 如果超过最大/最小年份,结果将无效。
例如,2008-12-31加上一周将导致2009-01-07。
public LocalDateTime plusDays(long days)返回此LocalDateTime的指定期间的LocalDateTime的副本。
此方法将指定的金额添加到天数字段中,根据需要增加月份和年份字段,以确保结果保持有效。 如果超过最大/最小年份,结果将无效。
例如,2008-12-31加上一天会导致2009-01-01。
public LocalDateTime plusHours(long hours)以指定的时间段返回此LocalDateTime的副本,小时数。
public LocalDateTime plusMinutes(long minutes)以指定的时间(以分钟为单位)返回此LocalDateTime的副本。
public LocalDateTime plusSeconds(long seconds)返回此副本LocalDateTime在加秒的规定时间。
5、减少时间
public LocalDateTime minusYears(long years)返回此LocalDateTime的副本,以减去的年份为单位。
该方法从三个步骤中减去指定的数量:
从年度字段减去输入年数
检查结果日期是否无效
如果有必要,将月份调整到最后一个有效日期
例如,2008-02-29(闰年)减去一年将导致无效日期2009-02-29(标准年)。 而不是返回无效结果,而是选择2009-02-28的最后一个有效日期。
public LocalDateTime minusMonths(long months)返回此LocalDateTime的副本,指定的时间以月为单位减去。
该方法从以下三个步骤中减去月份字段中指定的数量:
从月份字段减去输入月份
检查结果日期是否无效
如果有必要,将月份调整到最后一个有效日期
例如,2007-03-31减去一个月将导致无效日期2007-04-31。 而不是返回无效结果,而是选择2007-04-30的最后一个有效日期。
public LocalDateTime minusWeeks(long weeks)返回此LocalDateTime一个副本,以指定的周期扣除。
该方法从必要的日期字段减去月和年字段中减去指定的数量,以确保结果保持有效。 如果超过最大/最小年份,结果将无效。
例如,2009-01-07减去一周将导致2008-12-31。
public LocalDateTime minusDays(long days)返回此LocalDateTime的副本,其中指定的时间间隔以天为单位。
该方法从天数字段减去指定数量,根据需要增加月份和年份字段,以确保结果保持有效。 如果超过最大/最小年份,结果将无效。
例如,2009-01-01减去一天会导致2008-12-31。
public LocalDateTime minusHours(long hours)以指定的时间段返回此LocalDateTime的副本,以减少的小时数。
public LocalDateTime minusMinutes(long minutes)返回此LocalDateTime的副本,其中指定的时间间隔以分钟为单位。
public LocalDateTime minusSeconds(long seconds)返回此LocalDateTime的副本,其中指定的时间间隔以秒为单位。
6、其他
public String format(DateTimeFormatter formatter)使用指定的格式化程序格式化此日期时间。这个日期时间将传递给格式化程序以生成一个字符串。
public static LocalDateTime parse(CharSequence text, DateTimeFormatter formatter)使用特定的格式化LocalDateTime从文本字符串获取LocalDateTime的实例。
public boolean isBefore(ChronoLocalDateTime> other) 检查此日期时间是否在指定的日期时间之前
public boolean isAfter(ChronoLocalDateTime> other)检查这个日期时间是否在指定的日期之后。
public boolean equals(Object obj) 检查这个日期时间是否等于另一个日期时间。
public boolean isEqual(ChronoLocalDateTime> other)检查此日期时间是否等于指定的日期时间。
public String toString()将此日期时间输出为String,如2007-12-03T10:15:30。
public LocalDateTime truncatedTo(TemporalUnit unit):根据unit单位截断时间
LocalDateTime now = LocalDateTime.now();
System.out.println(now);
System.out.println("dayOfYear="+now.getDayOfYear());
System.out.println("dayOfMonth="+now.getDayOfMonth());
System.out.println("dayOfWeek="+now.getDayOfWeek());
System.out.println("year="+now.getYear());
System.out.println("month="+now.getMonth());
System.out.println("hour="+now.getHour());
System.out.println("minute="+now.getMinute());
System.out.println("second="+now.getSecond());
LocalDateTime ldt = now.minusDays(1);
System.out.println(ldt);
System.out.println(now.minusHours(1));
System.out.println(now.minusMinutes(1));
System.out.println(now.minusSeconds(1));
System.out.println(now.minusMonths(1));
System.out.println(now.minusWeeks(1));
System.out.println(now.minusYears(1));
System.out.println(now.truncatedTo(ChronoUnit.SECONDS));
System.out.println(now.truncatedTo(ChronoUnit.MINUTES));
System.out.println(now.truncatedTo(ChronoUnit.HOURS));
// 2024-08-26T00:00
System.out.println(now.truncatedTo(ChronoUnit.DAYS));
// System.out.println(now.truncatedTo(ChronoUnit.MONTHS));
System.out.println(now.withNano(0));
System.out.println(now.withSecond(0));
System.out.println(now.withSecond(0).withMinute(0));
System.out.println(now.withSecond(0).withMinute(0).withHour(0));
ldt = LocalDateTime.of(2008,2,29,0,0,0);
// 2008-02-29T00:00
System.out.println(ldt);
// 2009-02-28T00:00
System.out.println(ldt.plusYears(1));
// DateTimeFormatter yyyy-MM-dd HH:mm:ss.SSS
final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
String timestr = now.format(dtf);
System.out.println(timestr);
ldt = LocalDateTime.parse(timestr,dtf);
System.out.println(ldt);
上一篇
下一篇
nodejs hello
mybatis 获取自动生成的键值
DateTimeFormatter 使用
MyBatis3 Transaction 事务
npm install -g 和 npm install 区别
nodejs 包管理工具 npm yarn 和 pnpm