Java API的使用

LocalDateTime 计算天数差、时间差

public class Test {

    public static void main(String[] args) {
        LocalDateTime now = LocalDateTime.now();
        LocalDateTime localDateTime = LocalDateTime.now().plusHours(2);
        Duration between = Duration.between(now, localDateTime);
        System.out.println("相差的天数: " + between.toDays());
        System.out.println("相差的小时数: " + between.toHours());
        System.out.println("相差的分钟数: " + between.toMinutes());
        System.out.println("相差毫秒数: " + between.toMillis());
        System.out.println("相差的纳秒数: " + between.toNanos());
		
		// LocalDate 时间差
		LocalDate of = LocalDate.of(2020, 6, 5);
        LocalDate localDate = Instant.ofEpochMilli(1590724649484L).atZone(ZoneOffset.ofHours(8)).toLocalDate();
		int days = Period.between(localDate, of).getDays();
    }
}
  • 控制台打印
相差的天数: 0
相差的小时数: 2
相差的分钟数: 120
相差毫秒数: 7200000
相差的纳秒数: 7200000000000

Date 转 LocalDateTime

public class Test {

    public static void main(String[] args) {
        Date date = new Date();
        Instant instant = date.toInstant();
        ZoneId zoneId = ZoneId.systemDefault();

        LocalDateTime localDateTime = instant.atZone(zoneId).toLocalDateTime();
        System.out.println("Date : " + date);
        System.out.println("LocalDateTime : " + localDateTime);

    }
}
  • 打印
Date:Mon May 18 11:36:05 CST 2020
LocalDateTime:2020-05-18T11:36:05.673
/**
 * 时间戳转换日期对象
 *
 * @param stamp 时间戳
 * @return Date对象
 */
public static Date stampToDate(String stamp) {
    long t = Long.parseLong(stamp);
    return new Date(t);
}

/**
 * 时间戳转LocalDateTime
 * @param stamp
 * @return
 */
public static LocalDateTime stampToLocalDateTime(String stamp){
    long t = Long.parseLong(stamp);
    Instant timestamp = Instant.ofEpochMilli(t);
    return LocalDateTime.ofInstant(timestamp, ZoneId.of(zone));
}
String nowTime = "2020-08-18 06:12:05 America/Los_Angeles";
String format = "yyyy-MM-dd HH:mm:ss 'America/Los_Angeles'";
LocalDateTime parse = LocalDateTime.parse(nowTime, DateTimeFormatter.ofPattern(format));

字符串转LocalDateTime

String time = "2019-08-26 18:03:33";
DateTimeFormatter format = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime localDateTime = LocalDateTime.parse(time, format);

命名规范

  • XxxxHolder
    内部持有一个或几个对象(Handler、Processor)实例

  • XxxxHandler
    内部封装的一个业务的处理器

  • XxxxProcessor
    开放给外部的接口定义

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值