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() | 获取此时间间隔的纳秒 |
以上就是我的分享,有什么不对的地方,欢迎在评论区中指出,我定会虚心修改!