Date
生活中的时间
世界标准时间:格林尼治时间/格林威治时间(Greenwich Mean Time) 简称:GMT。
中国标准时间:世界标准时间+8小时
时间换算公式:
时间 |
时间 |
1小时 |
60分 |
1分 |
60秒 |
1秒 |
1000毫秒 |
1毫秒 |
1000微秒 |
1微秒 |
1000纳秒 |
计算机中的时间原点
计算机中的起始时间:1970年1月1日 00:00:00
Date类
Date类概述
Date代表了一个特定的时间,精确到毫秒
构造方法
方法名 |
说明 |
public Date() |
创建一个Date对象,表示默认时间 |
public Date(long dare) |
创建一个Date对象,表示指定时间 |
Date date 1 = new Date(); ---------->把当前时间封装成一个Date对象
Date date 2 = new Date(0L); --->把从时间原点开始,过了指定毫秒的时间,封装成一个Date对象需要考虑时差问题
Date类的常用方法
方法名 |
说明 |
public long getTime() |
获取时间对象的毫秒值 |
public void setTime(long time) |
设置时间,传递毫秒值 |
SimpleDateFormat
SimpleDateFormat可以对Date对象,进行格式化和解析
格式化:Date对象→2022年5月17号 09:15:12
解析:2022年5月17号 09:15:12→Date对象
常用的模式字母及对应关系如下:
字母 |
关系 |
y |
年 |
M |
月 |
d |
日 |
H |
时 |
m |
分 |
s |
秒 |
构造方法
方法名 |
说明 |
public SimpleDateFormat() |
构造一个SimpleDateFormat,使用默认格式 |
public SimpleDateFormat(String pattem) |
构造一个SimpleDateFormat,使用指定的格式 |
SimpleDateFormat 格式化和解析日期
1、格式化(从Date到String )
public final String format(Date date):将日期格式化成(日期/时间)字符串
2、解析(从String到Date)
public Date parse(String source): 从给定字符串的开始解析文本以生成日期
JDK8新增日期类
LocalDateTime 创建方法
方法名 |
说明 |
public static LocalDateTime now() |
获取当前系统时间 |
public static LocalDateTime of() |
使用指定年月日和时分秒初始化一个LocalDateTime对象 |
LocalDateTime获取方法
方法名 |
说明 |
public int getYear() |
获取年 |
public int getMonthValue() |
获取月份(1-12) |
public int getDayOfMonth() |
获取月份中的第几天(1-31) |
public int getDayOfYear() |
获取一年中的第几天(1-366) |
public DayOfWeek getDayOfWeek() |
获取星期 |
public int getMinute() |
获取分钟 |
public int getHour() |
获取小时 |
LocalDateTime转换方法
方法名 |
说明 |
public LocalDate toLocalDate() |
转换成为一个LocalDate对象 |
public LocalTime toLocalTime() |
转换成为一个LocalTime对象 |
LocalDateTime格式化和解析
方法名 |
说明 |
public String format(指定格式) |
把一个LocalDateTime格式化成为一个字符串 |
public LocalDateTime parse(准备解析的字符串,解析格式) |
把一个日期字符串解析成为一个LocalDateTime对象 |
JDK8的日期格式化器:DateTimeFormatter
方法名 |
说明 |
public static DateTimeFormatter ofPattern(String pattern) |
使用指定的日期模板获取一个日期格式化器DateTimeFormatter对象 |
LocalDateTime 增加或者减少时间的方法
方法名 |
说明 |
public LocalDateTime plusYears(long years) |
添加或者减去年 |
public LocalDateTime plusMonths(long months) |
添加或者减去月 |
public LocalDateTime plusDays(long days) |
添加或者减去日 |
public LocalDateTime plusHours(long hours) |
添加或者减去时 |
public LocalDateTime plusMinutes(long minutes) |
添加或者减去分 |
public LocalDateTime plusSeconds(long seconds) |
添加或者减去秒 |
public LocalDateTime plusWeeks(long weeks) |
添加或者减去周 |
注意点:
方法返回一个新的LocalDateTime对象,返回值就是修改之后的结果
参数为正,就是往后加
参数为负,就是往前减
LocalDateTime 减少或者增加时间的方法
方法名 |
说明 |
public LocalDateTime minusYears(long years) |
减去或者添加年 |
public LocalDateTime minusMonths(long months) |
减去或者添加月 |
public LocalDateTime minusDays(long days) |
减去或者添加日 |
public LocalDateTime minusHours(long hours) |
减去或者添加时 |
public LocalDateTime minusMinutes(long minutes) |
减去或者添加分 |
public LocalDateTime minusSeconds(long seconds) |
减去或者添加秒 |
public LocalDateTime minusWeeks(long weeks) |
减去或者添加周 |
注意点:
方法返回一个新的LocalDateTime对象,返回值就是修改之后的结果
参数为正,就是往前减
参数为负,就是往后加
LocalDateTime修改方法
方法名 |
说明 |
public LocalDateTime withYear(int year) |
直接修改年 |
public LocalDateTime withMonth(int month) |
直接修改月 |
public LocalDateTime withDayOfMonth(int dayofmonth) |
直接修改日期(一个月中的第几天) |
public LocalDateTime withDayOfYear(int dayOfYear) |
直接修改日期(一年中的第几天) |
public LocalDateTime withHour(int hour) |
直接修改小时 |
public LocalDateTime withMinute(int minute) |
直接修改分钟 |
public LocalDateTime withSecond(int second) |
直接修改秒 |
period
方法名 |
说明 |
public static period between(开始时间,结束时间) |
计算两个“时间”的间隔 |
public int getYears() |
获得这段时间的年数 |
public int getMonths() |
获得此段时间的月数 |
public int getDays() |
获得此段时间的天数 |
public long toTotalMonths() |
获取此段时间的总月数 |
Duration
方法名 |
说明 |
public static Durationbetween(开始时间,结束时间) |
计算两个“时间”的间隔 |
public long toSeconds() |
获取此时间间隔的秒 |
public int toMillis() |
获取此时间间隔的毫秒 |
public int toNanos() |
获取此时间间隔的纳秒 |
以上就是我的分享,有什么不对的地方,欢迎在评论区中指出,我定会虚心修改!