java8日期(Date,LocalDate,LocalTime,LocalDateTime),以及处理时间的方法

2023-11-05

1.LocalDate(年月日)常用方法

1.1.1 当月最大时间 不包含时分秒
LocalDate lastday = date.with(TemporalAdjusters.lastDayOfMonth());
1.1.2 当月最小时间 不包含时分秒
   LocalDate firstday = date.with(TemporalAdjusters.firstDayOfMonth());

now

根据当前时间创建LocalDate对象

of

根据指定年月日创建LocalDate对象

getYear

获得年份

getMonthValue

获得月份

getMonth

获得月份枚举值

getDayOfMonth

获得月份天数(1-31)

getDayOfWeek

获得星期几

getDayOfYear

获得年份中的第几天(1-366)

lengthOfYear

获得当年总天数

lengthOfMonth

获得当月总天数

toEpochDay

与时间纪元(1970年1月1日)相差的天数

plusDays

加天

plusWeeks

加周

plusMonths

加月

plusYears

加年

minusDays

减年

minusWeeks

减周

minusMonths

减月

minusYears

减年

withYear

替换年份

withYear

替换年份

withDayOfMonth

替换日期

withDayOfYear

替换日期

isBefore

是否日期在之前

isAfter

是否日期在之后

isEqual

是否是当前日期

isleapYear

是否是闰年

1.1.3 代码示例(获取方法)
public void test(){
    //获取当前日期 2023-03-20
    System.out.println(LocalDate.now());
    //获取指定日期 2000-03-05
    System.out.println(LocalDate.of(2014, 3, 5));
    //获取日期的年份 2022
    System.out.println(LocalDate.now().getYear());
    //获取日期的月份 7
    System.out.println(LocalDate.now().getMonthValue());
    //获取日期的日子 7
    System.out.println(LocalDate.now().getDayOfMonth());
    //获取日期的星期 THURSDAY
    System.out.println(LocalDate.now().getDayOfWeek());
    //当天所在这一年的第几天 188
    System.out.println(LocalDate.now().getDayOfYear());
    //获取当年天数 365
    System.out.println(LocalDate.now().lengthOfYear());
    //获取当月天数 31
    System.out.println(LocalDate.now().lengthOfMonth());
    //与时间纪元(1970年1月1日)相差的天数,负数表示在时间纪元之前多少天 19180
    System.out.println(LocalDate.now().toEpochDay());
}
1.1.4 代码示例(运算方法)
public void test(){
    //加一天
    System.out.println("加1天:" + LocalDate.now().plusDays(1));
    //加一周
    System.out.println("加1周:" + LocalDate.now().plusWeeks(1));
    //加一月
    System.out.println("加1月:" + LocalDate.now().plusMonths(1));
    //加一年
    System.out.println("加1年:" + LocalDate.now().plusYears(1));
    //减一天
    System.out.println("减1天:" + LocalDate.now().minusDays(1));
    //减一周
    System.out.println("减1周:" + LocalDate.now().minusWeeks(1));
    //减一月
    System.out.println("减1月:" + LocalDate.now().minusMonths(1));
    //减一年
    System.out.println("减1年:" + LocalDate.now().minusYears(1));
}
1.1.5 代码示例 (替换方法)
public void test(){
    //(1)替换年份:2000-07-07
    System.out.println("替换年份为2000:" + LocalDate.now().withYear(2000));
    //(2)替换月份:2020-01-07
    System.out.println("替换月份为1:" + LocalDate.now().withMonth(1));
    //(3)替换日子:2020-07-01
    System.out.println("替换日期为1:" + LocalDate.now().withDayOfMonth(1));
    //(4)替换天数:一年中的第多少天
    System.out.println("替换天数为1:" + LocalDate.now().withDayOfYear(1));
}
1.1.6 代码示例(比较方法)
public void test(){
    //是否在当天之前
    System.out.println("是否在当天之前:" + LocalDate.now().minusDays(1).isBefore(LocalDate.now()));
    //是否在当天之后
    System.out.println("是否在当天之后:" + LocalDate.now().plusDays(1).isAfter(LocalDate.now()));
    //是否在当天
    System.out.println("是否在当天:" + LocalDate.now().isEqual(LocalDate.now()));
    //是否是闰年
    System.out.println("今年是否是闰年:" + LocalDate.now().isLeapYear());
}
1.2.1 LocalDate 与 String 之间的转换
//字符串转换为LocalDate
LocalDate localdate = LocalDate.parse("2023-03-20");
System.out.println(localdate);
//使用特定格式化(yyyy-MM-dd)从字符串获取LocalDate实例
String str = "2023-03-20";
DateTimeFormatter fmt1 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date = LocalDate.parse(str, fmt1);
System.out.println(date);
//使用特定格式化形式(yyyy/MM/dd)将LocalDate转为字符串
LocalDate today = LocalDate.now();
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy/MM/dd");
String dateStr = today.format(fmt);
System.out.println(dateStr);
1.2.2日期格式化的全部格式
 public static String YYYY = "yyyy";

 public static String YYYY_MM = "yyyy-MM";

 public static String YYYY_MM_DD = "yyyy-MM-dd";

 public static String YYYYMMDDHHMMSS = "yyyyMMddHHmmss";

 public static String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";

 private static String[] parsePatterns = {
        "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy-MM",
        "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM",
        "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", "yyyy.MM.dd HH:mm", "yyyy.MM"};
1.2.3LocalDate 与 Date之间的转换
//LocalDate转化为Date
ZonedDateTime zonedDateTime = LocalDate.now().atStartOfDay(ZoneId.systemDefault());
Date date = Date.from(zonedDateTime.toInstant());
System.out.println(new SimpleDateFormat("yyyy-MM-dd").format(date));
//Date转化为LocalDate
LocalDate localDate = new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
System.out.println(localDate.format(DateTimeFormatter.ISO_LOCAL_DATE));

2. LocalDateTime(年月日时分秒)用法

2.1.1 获得某天最大时间
 /**
     * 获得某天最大时间 2022-11-11 23:59:59
     * @param date
     * @return
     */
    public static Date getEndOfDay(Date date) {

        if (date == null) date = new Date();
        LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(date.getTime()), ZoneId.systemDefault());;
        LocalDateTime endOfDay = localDateTime.with(LocalTime.MAX);
        return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant());
    }
2.1.2 获得某天最小时间
 /**
     * 获得某天最小时间 2022-11-11 00:00:00
     * @param date
     * @return
     */
    public static Date getStartOfDay(Date date) {

        if (date == null) date = new Date();
        LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(date.getTime()), ZoneId.systemDefault());
        LocalDateTime startOfDay = localDateTime.with(LocalTime.MIN);
        return Date.from(startOfDay.atZone(ZoneId.systemDefault()).toInstant());
    }
2.1.3 当月最大时间包含时分秒
    LocalDateTime lastday = LocalDateTime.of(date.with(TemporalAdjusters.lastDayOfMonth()), LocalTime.MAX);
2.1.4 当月最小时间包含时分秒
 LocalDateTime firstday = LocalDateTime.of(date.with(TemporalAdjusters.firstDayOfMonth()), LocalTime.MIN);
2.1.5 方法与描述

方法

描述

static LocalDateTime now()

获取默认时区的当前日期时间

static LocalDateTime now(Clock clock)

从指定时钟获取当前日期时间

static LocalDateTime now(ZoneId zone)

获取指定时区的当前日期时间

static LocalDateTime of(LocalDate date, LocalTime time)

根据日期和时间对象获取LocalDateTime 实例

static LocalDateTime of(int year, Month month, int dayOfMonth, int hour, int minute, int second)

second) 根据指定的年、月、日、时、分、秒获取LocalDateTime 实例

getYear

获取年份

getMonth

使用月份枚举类获取月份

getDayOfMonth

获取日期在该月是第几天

getDayOfWeek

获取日期是星期几

getDayOfYear

获取日期在该年是第几天

getHour

获取小时

getMinute

获取分钟

getSecond

获取秒

getNano

获取纳秒

plusYears

增加年

plusMonths

增加月

plusWeeks

增加周

plusDays

增加天

plusHours

增加小时

plusMinutes

增加分

plusSeconds

增加秒

plusNanos

增加纳秒

minusYears

减少年

minusMonths

减少月

meminusWeeks

减少周

minusDays

减少天

minusHours

减少小时

minusMinutes

减少分

minusSeconds

减少秒

minusNanos

减少纳秒

isEqual

判断日期时间是否相等

isBefore

检查是否在指定日期时间之前

isAfter

检查是否在指定日期时间之后

2.1.6 代码示例(获取方法)
public void test(){
    //获取默认时区的当前日期时间
    System.out.println(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
    //获取指定时区的当前日期时间
    System.out.println(LocalDateTime.now(ZoneId.of("Asia/Shanghai")));
    //从指定时钟获取当前日期时间
    System.out.println(LocalDateTime.now(Clock.systemDefaultZone()));
    //根据日期和时间对象获取LocalDateTime实例
    System.out.println(LocalDateTime.of(LocalDate.now(), LocalTime.now()));
    //根据指定的年、月、日、时、分、秒获取LocalDateTime实例
    System.out.println(LocalDateTime.of(2019, 12, 7, 21, 48, 50));
    //获取年份
    System.out.println("年 : " + LocalDateTime.now().getYear());
    //使用月份枚举类获取月份
    System.out.println("月(英文) : " + LocalDateTime.now().getMonth());
    //使用月份数字类获取月份
    System.out.println(" 月(数字英文): " + LocalDateTime.now().getMonth().getValue());
    //获取日期在该月是第几天
    System.out.println("天 : " + LocalDateTime.now().getDayOfMonth());
    //(获取日期是星期几(英文)
    System.out.println("星期几(英文) : " + LocalDateTime.now().getDayOfWeek());
    //获取日期是星期几(数字英文)
    System.out.println("星期几(数字英文) : " + LocalDateTime.now().getDayOfWeek().getValue());
    //(获取日期在该年是第几天
    System.out.println("本年的第几天 : " + LocalDateTime.now().getDayOfYear());
    //获取小时
    System.out.println("时: " + LocalDateTime.now().getHour());
    //获取分钟
    System.out.println("分: " + LocalDateTime.now().getMinute());
    //获取秒
    System.out.println("秒: " + LocalDateTime.now().getSecond());
    //获取纳秒
    System.out.println("纳秒: " + LocalDateTime.now().getNano());
}
2.1.7 代码示例(计算方法)
public void test(){
    //增加天数
    System.out.println("增加天数 : " + LocalDateTime.now().plusDays(1));
    //增加周数
    System.out.println("增加周数 : " + LocalDateTime.now().plusWeeks(1));
    //增加月数
    System.out.println("增加月数 : " + LocalDateTime.now().plusMonths(1));
    //增加年数
    System.out.println("增加年数 : " + LocalDateTime.now().plusYears(1));
    //减少天数
    System.out.println("减少天数 : " + LocalDateTime.now().minusDays(1));
    //减少月数
    System.out.println("减少月数 : " + LocalDateTime.now().minusMonths(1));
    //减少周数
    System.out.println("减少周数 : " + LocalDateTime.now().minusWeeks(1));
    //减少年数
    System.out.println("减少年数 : " + LocalDateTime.now().minusYears(1));
    //增加小时
    System.out.println("增加1小时: " + LocalDateTime.now().plusHours(1));
    //增加分钟
    System.out.println("增加30分钟: " + LocalDateTime.now().plusMinutes(30));
    //增加秒数
    System.out.println("增加30秒: " + LocalDateTime.now().plusSeconds(30));
    //增加纳秒
    System.out.println("增加10000纳秒:" + LocalDateTime.now().plusNanos(10000));
    //减少小时
    System.out.println("减少1小时:" + LocalDateTime.now().minusHours(1));
    //减少分钟
    System.out.println("减少30分钟:" + LocalDateTime.now().minusMinutes(30));
    //减少秒数
    System.out.println("减少30秒: " + LocalDateTime.now().minusSeconds(30));
    //减少纳秒
    System.out.println("减少10000纳秒:" + LocalDateTime.now().minusNanos(10000));
}
2.1.8 代码示例(比较方法)
public void test(){
    //判断日期时间是否相等
    System.out.println(LocalDateTime.now().isEqual(LocalDateTime.now()));
    //检查是否在指定日期时间之前
    System.out.println(LocalDateTime.now().isBefore(LocalDateTime.now()));
    //检查是否在指定日期时间之后
    System.out.println(LocalDateTime.now().isAfter(LocalDateTime.now()));
}
2.1.9LocalDateTime与 String 之间的转换
public void test(){
    //(获取日期部分
    System.out.println(LocalDateTime.now().toLocalDate());
    //获取时间部分:时、分、秒
    System.out.println(LocalDateTime.now().toLocalTime().format(DateTimeFormatter.ofPattern("HH:mm:ss")));
    //从文本字符串获取LocalDateTime实例
    LocalDateTime ldt2 = LocalDateTime.parse("2019-12-07T21:20:06.303995200");
    System.out.println(ldt2.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
    //使用特定格式化形式(格式化参考1.2.2)从文本字符串获取LocalDateTime实例
    DateTimeFormatter df1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    LocalDateTime ldt3 = LocalDateTime.parse("2019-12-07 21:20:06", df1);
    System.out.println(ldt3);
    //使用特定格式化形式将LocalDateTime转为字符串
    String ldt4 = df1.format(ldt3);
    System.out.println(ldt4);
}
2.2.1 LocalDateTime与 Date之间的转换
public void test(){
    //LocalDateTime转化为Date
    ZonedDateTime zdt = LocalDateTime.now().atZone(ZoneId.systemDefault());
    Date date1 = Date.from(zdt.toInstant());
    System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date1));
    //Date转化为LocalDateTime
    LocalDateTime localDateTime = new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
    System.out.println(localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
}

3.方法

3.1.1计算两个时间相差的分钟数
     /**
     * 计算两个时间想差的分钟数
     */
    public static String getDateTime(Date startDate, Date endDate) {
        // 获得两个时间的毫秒时间差异
        long diff = endDate.getTime() - startDate.getTime();
        // 计算差多少分钟
        long min = TimeUnit.MILLISECONDS.toMinutes(diff);
        return String.valueOf(min);
    }
3.1.2计算两个时间差(天,时,分)
    /**
     * 计算两个时间差
     */
    public static String getDatePoor(Date endDate, Date nowDate) {
        long nd = 1000 * 24 * 60 * 60;
        long nh = 1000 * 60 * 60;
        long nm = 1000 * 60;
        // long ns = 1000;
        // 获得两个时间的毫秒时间差异
        long diff = endDate.getTime() - nowDate.getTime();
        // 计算差多少天
        long day = diff / nd;
        // 计算差多少小时
        long hour = diff % nd / nh;
        // 计算差多少分钟
        long min = diff % nd % nh / nm;
        // 计算差多少秒//输出结果
        // long sec = diff % nd % nh % nm / ns;
        return day + "天" + hour + "小时" + min + "分钟";
    }
3.1.3计算相差天数
    /**
     * 计算相差天数
     */
    public static int differentDaysByMillisecond(Date date1, Date date2) {
        return Math.abs((int) ((date2.getTime() - date1.getTime()) / (1000 * 3600 * 24)));
    }
3.1.4获取当年的第一天(返回date)
    /**
     * 获取当年的第一天
     *
     * @return
     */
    public static Date getCurrYearFirst() {
        Calendar currCal = Calendar.getInstance();
        int currentYear = currCal.get(Calendar.YEAR);
        return getYearFirst(currentYear);
    }

    public static Date getYearFirst(int year) {
        Calendar calendar = Calendar.getInstance();
        calendar.clear();
        calendar.set(Calendar.YEAR, year);
        Date currYearFirst = calendar.getTime();
        return currYearFirst;
    }
3.1.5获取某年最后一天日期(返回date)
    /**
     * 获取某年最后一天日期
     *
     * @param year 年份
     * @return Date
     */
    public static Date getYearLast(int year) {
        Calendar calendar = Calendar.getInstance();
        calendar.clear();
        calendar.set(Calendar.YEAR, year);
        calendar.roll(Calendar.DAY_OF_YEAR, -1);
        Date currYearLast = calendar.getTime();

        return currYearLast;
    }
3.1.6 1970-01-01 加天数 得到日期(日期格式)
 /**
     * 1970-01-01 加天数 得到日期(日期格式)
     */
    public static Date getDaysDate(Integer days) {
        Date date = dateTime(YYYY_MM_DD, "1970-01-01");
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        calendar.add(Calendar.DATE, days);
        return calendar.getTime();
    }
3.1.7 计算 1970-01-01 到 规定日期的天数
 /**
     * 计算 1970-01-01 到 规定日期的天数
     */
    public static Integer betweenDays(Date endDate) {

        Date dateStart = dateTime(YYYY_MM_DD, "1970-01-01");
        long betweenDays = (endDate.getTime() - dateStart.getTime()) / (1000L * 3600L * 24L);
        return (int) betweenDays;
    }
3.1.8 传入分钟 返回时分秒 HH:mm:ss
  /**
     * 传入分钟  返回时分秒 HH:mm:ss
     */
    public static String getHourToSeconds(Integer time) {
        SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
        Date date = new Date(time * 60 * 1000);
        formatter.setTimeZone(TimeZone.getTimeZone("GMT"));
        String returnFormat = formatter.format(date);
        return returnFormat;
    }
3.1.9 传入HH:mm:ss 获取 分钟数
 /**
     * 传入HH:mm:ss  获取 分钟数
     */
    public static Integer getMinutesNum(Date nowDate) throws ParseException {
        SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
        String format = formatter.format(nowDate);
        formatter.setTimeZone(TimeZone.getTimeZone("GMT"));
        Date date = formatter.parse(format);
        long l = date.getTime() / 1000 / 60;
        return (int) l;
    }
3.2.1 返回当前月份之前的月份 汉字
/**
     * 返回当前月份之前的月份  汉字
     */
    public static List<String> getMonthList(int year) {
        int todayYear = getTodayYear();
        String[] num_lower = {"一", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二"};
        List<String> list = new ArrayList<>();
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(todayYear == year ? new Date() : getYearLast(year));
        int month = calendar.get(Calendar.MONTH) + 1;
        for (int i = 1; i <= month; i++) {
            list.add(num_lower[i - 1] + "月");
        }
        return list;
    }
3.2.2 判断是否是整点
/**
     * 判断是否是整点
     */
    public static boolean isFullDian(Date date) {
        boolean flag = false;
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        if (calendar.get(Calendar.MINUTE) == 0 && calendar.get(Calendar.SECOND) == 0) {
            flag = true;
        }
        return flag;
    }
3.2.3 判断当前分钟整点
/**
     * 判断当前分钟整点
     */
    public static boolean isFullMinute(Date date) {
        boolean flag = false;
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        if (calendar.get(Calendar.MINUTE) == 0) {
            flag = true;
        }
        return flag;
    }
3.2.4 判断两个时间是否相等 小时
/**
     * 判断两个时间是否相等  小时
     */
    public static boolean isEqalsDate(Date one, Date two) {
        boolean flag = false;
        SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd HH");
        String oneTime = dft.format(one);
        String twoTime = dft.format(two);
        if (oneTime.equals(twoTime)) {
            flag = true;
        }

        return flag;
    }

4. LocalTime(时分秒)常用方法

方法

描述

static LocalTime now()

获取默认时区的当前时间

static LocalTime now(ZoneId zone)

获取指定时区的当前时间

static LocalTime now(Clock clock)

从指定时钟获取当前时间

of

根据指定的时、分、秒获取LocalTime 实例

getHour

获取小时字段

getMinute

获取分钟字段

getSecond

获取秒字段

getNano

获取纳秒字段

plusHours

增加小时数

plusMinutes

增加分钟数

plusSeconds

增加秒数

plusNanos

增加纳秒数

minusHours

减少小时数

minusMinutes

减少分钟数

minusSeconds

减少秒数

minusNanos

减少纳秒数

compareTo

时间与另一个时间比较

isAfter

检查时间是否在指定时间之后

isBefore

检查时间是否在指定时间之前

4.1.1代码示例(获取方法)
public void test(){
    //获取默认时区的当前时间 14:11:31.294
    System.out.println(LocalTime.now());
    //获取指定时区的当前时间 14:11:31.392
    System.out.println(LocalTime.now(ZoneId.of("Asia/Shanghai")));
    //从指定时钟获取当前时间 14:11:31.392
    System.out.println(LocalTime.now(Clock.systemDefaultZone()));
    //指定获取时分秒
    System.out.println(LocalTime.of(12, 30, 30));
    //指定获取时分
    System.out.println(LocalTime.of(12, 30));
    //指定获取时分秒纳秒
    System.out.println(LocalTime.of(12, 30, 30, 123));
    //获取小时字段
    System.out.println("时: " + LocalTime.now().getHour());
    //获取分钟字段
    System.out.println("分: " + LocalTime.now().getMinute());
    //获取秒字段
    System.out.println("秒: " + LocalTime.now().getSecond());
    //获取纳秒字段
    System.out.println("纳秒: " + LocalTime.now().getNano());
}
4.1.2代码示例(计算方法)
public void test(){
    //增加一小时
    System.out.println("增加1小时: " + LocalTime.now().plusHours(1));
    //增加三十分钟
    System.out.println("增加30分钟: " + LocalTime.now().plusMinutes(30));
    //增加三十秒
    System.out.println("增加30秒: " + LocalTime.now().plusSeconds(30));
    //增加一万纳秒
    System.out.println("增加10000纳秒:" + LocalTime.now().plusNanos(10000));
    //减少一小时
    System.out.println("减少1小时: " + LocalTime.now().minusHours(1));
    //减少三十分钟
    System.out.println("减少30分钟: " + LocalTime.now().minusMinutes(30));
    //减少三十秒
    System.out.println("减少30秒: " + LocalTime.now().minusSeconds(30));
    //减少一万纳秒
    System.out.println("减少10000纳秒:" + LocalTime.now().minusNanos(10000));
}
4.1.3代码示例(比较方法)
public void test(){
    //时间与另一个时间比较 0(相等)正数(大)负数(小)
    System.out.println(LocalTime.now().compareTo(LocalTime.now()));
    //检查时间是否在指定时间之后
    System.out.println(LocalTime.now().isAfter(LocalTime.now()));
    //检查时间是否在指定时间之前
    System.out.println(LocalTime.now().isBefore(LocalTime.now()));
}
4.1.4 LocalTime与 String 之间的转换
public void test(){
    //从文本字符串获取LocalTime实例
    LocalTime localTime1 = LocalTime.parse("12:30:30");
    System.out.println(localTime1);
    //使用特定格式化形式从文本字符串获取LocalTime实例
    LocalTime localTime2 = LocalTime.parse("12:30:30", DateTimeFormatter.ofPattern("HH:mm:ss"));
    System.out.println(localTime2);
    //使用特定格式化形式将LocalTime转为字符串
    DateTimeFormatter df1 = DateTimeFormatter.ofPattern("HH:mm:ss");
    LocalTime localTime3 = LocalTime.now();
    System.out.println(localTime3.format(df1));
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java8日期(Date,LocalDate,LocalTime,LocalDateTime),以及处理时间的方法 的相关文章

随机推荐

  • linux系统下常用的激活命令总结

    linux系统下常用的激活命令总结 作为一个刚入门linux的小白 很多的命令用了之后又会忘记 所以记录一下 方便后面回头查询 1 退出base环境 在terminal或者 bashrc文件中把conda自动启动设置为 false cond
  • Redis可视化客户端

    Redis是一个超精简的基于内存的键值对数据库 key value 一般对并发有一定要求的应用都用其储存session 乃至整个数据库 redis的可视化客户端目前较流行的有三个 Redis Client Redis Desktop Man
  • Vue 3 中的 Suspense 是什么?如何使用它

    Vue 3 中的 Suspense 是什么 如何使用它 介绍 Vue 3 是 Vue js 的最新版本 引入了一些令人兴奋的新功能和改进 其中之一是 Suspense 中文翻译为 暂停 机制 Suspense 是一种用于处理异步组件和延迟加
  • 教你App如何上架应用宝----腾讯开放开发平台

    上架app视频 http v youku com v show id XMTU0NTM1MTczNg html from y1 7 1 2 paction app在腾讯的 应用宝 市场 输入 czg学习演示 可以下载 注意 上架app视频的
  • 冒泡排序算法的Python实现(头歌实践教学平台)

    第1关 冒泡排序的实现 任务描述 本关任务 编写代码实现冒泡排序 相关知识 为了完成本关任务 你需要掌握 1 如何实现冒泡排序 2 冒泡排序的算法分析 冒泡排序 冒泡排序又称起泡排序 它的算法思路在于对无序表进行多趟比较交换 每趟都包括了多
  • ERROR: cannot launch node of type [turtlesim/turtlesim_node]

    这个之前路径是正确的 没有文档里说的那个BUG 为什么后续运行roslaunch rename01 node start turtle launch 的时候还是会报错呢 还是会出现 ERROR cannot launch node of t
  • 继承的详细介绍与理解,看了就懂

    继承的介绍 继承的概念及定义 定义格式 继承基类成员访问方式的变化 基类和派生类对象赋值转换 继承中的作用域 派生类的默认成员函数 继承与友元 继承与静态成员 复杂的菱形继承及菱形虚拟继承 总结 继承的概念及定义 继承也是面向对象的三大特性
  • ASM学习——开端

    什么是ASM ASM是一个操作java字节码的类库 ASM的操作对象 字节码 bytecode 数据 一个java文件经过java编译器javac编译之后会生成 class文件 在 class文件中 存储的就是字节码数据 ASM的操作对象就
  • XSL-FO 高级技术4

    概述 第 1 页 共7 页 既然您已经了解了定义打印页面外观的基本元素 现在让我们研究其它 XSL FO 元素 这些元素可以使 PDF 文档看上去更专业 本章将讨论下列主题 定义多页布局 添加页眉和页脚 对页面编号 用 Page x of
  • verilog/systemverilog的随机数生成问题

    Verilog SystemVerilog 里面的随机函数 Verilog系统自带一些随机数发生函数 最常用的有random 语法如下 random seed 指定概率分布 如果希望生成的随机数具有一定的概率分布 还有一些系统函数可以选用
  • webview页面有很多图片加载慢的处理方式

    dangwebview加载有很多图片的网页时会很慢 此时可以用webview的setBlockNetworkImage方法 在开始加载的时候使用 webview getSettings setBlockNetworkImage true 在
  • 云计算运营—01华为云计算解决方案介绍

    华为云计算解决方案介绍 文章目录 华为云计算解决方案介绍 一 FusionSphere虚拟化解决方案介绍 云操作系统架构 FusionCompute组成 FusionManager FusionStorage FS相比传统存储的优势 应用场
  • matplotlib 自带绘图样式效果展示速查(28种,全)

    matplotlib 自带绘图样式效果展示速查 28种 全 目 录 一 matplotlib 自带所有绘图样式效果展示 0 没有加style时的绘图风格 1 加 bmh style时的绘图风格 2 加 classic style时的绘图风格
  • 详解浏览器渲染原理及流程

    今天来分享一下浏览器的渲染原理及流程 前言 先来看看 Chrome 浏览器的多进程架构 通常 我们打包出来的 HTML CSS JavaScript 等文件 经过浏览器运行之后就会显示出页面 这个过程就是浏览器的渲染进程来操作实现的 渲染进
  • 网络通信设备之网络路由技术详解

    一 路由器简介 路由器是构成IP网络的核心 其最基本的作用就是连接不同类型的网络 智能选择最佳的信息传送线路 除此以外 路由器还具有访问控制功能 路由器也可以算作是一台专用计算机 可以听懂并翻译各种网络协议 就像一个会讲各种语言的人一样 1
  • 50个查询系列-第三个查询:查询所有同学的学号、姓名、选课数、总成绩;

    查询最主要的就是确定查询的主表 和辅助表 这个的话我们可以确认是用子查询 主表就是我们的学生表 tblstudent可以查到学生的学号 姓名 辅助表就是成绩表 tblscore 自己写的语句如下 SELECT tblstudent StuI
  • 在虚拟机中安装Windows Server2016

    先介绍一些比较有用的文章 但可能与本文没有直接关系 将windows server 2016改造为像windows 10一样适合个人使用的系统 Windows Server 2016 配置指南 事先说明 千万不要提前分区 没有意义 什么都不
  • 十一、Node.js

    一 Node js是什么 在了解Node js之前 我们先去了解一下什么叫v8引擎 这里参考一下其他博主的资料 聊聊V8引擎 努力学习前端的77的博客 CSDN博客 这个时候我们再去看下Node js的定义 官方对Node js的定义 No
  • MySQL利用AES_ENCRYPT()与AES_DECRYPT()加解密的正确方法示例

    前言 最近在工作中遇到一个需求是这样的 需要在使用AES ENCRYPT 函数将明文加密 存储在MySQL中 但是遇到了一些问题 下面就来详细介绍下 说将加密后的密文 解密取出来是NULL 看了一下 她发过来的表结构 再看了她通过AES D
  • java8日期(Date,LocalDate,LocalTime,LocalDateTime),以及处理时间的方法

    1 LocalDate 年月日 常用方法 1 1 1 当月最大时间 不包含时分秒 LocalDate lastday date with TemporalAdjusters lastDayOfMonth 1 1 2 当月最小时间 不包含时分