当前位置: 首页 > news >正文

网站开发论文参考文献网站建站

网站开发论文参考文献,网站建站,东莞建站模板大全,做的很好的网站目录 年初年末月初月末3. 日初日末 记录日常开发中的常用的日期转换代码,算是一篇Java 8时间API使用实操的简短总结文。 下文中,都以LocalDateTime为例,在不声明的情况下如下方法一般都适用于Java8中LocalDate、LocalDateTime、OffsetDateTi…

目录

  • 年初年末
  • 月初月末
  • 3. 日初日末

记录日常开发中的常用的日期转换代码,算是一篇Java 8时间API使用实操的简短总结文。

下文中,都以LocalDateTime为例,在不声明的情况下如下方法一般都适用于Java8中LocalDate、LocalDateTime、OffsetDateTime、ZonedDateTime等时间类,不适用某些类时会在文中有提醒。



年初年末

  1. 使用TemporalAdjusters工具类。
  • TemporalAdjusters.firstDayOfYear():将月份和日期调整至1月1日
  • TemporalAdjusters.lastDayOfYear():将月份和日期调整至12月31日
  • TemporalAdjusters.firstDayOfMonth():将月份调整至当月的第一天(1)
  • TemporalAdjusters.lastDayOfMonth():将月份调整至当月的最后一天(28-31)
  • TemporalAdjusters.firstDayOfNextMonth():将月份和日期调整为下个月的第一天
  • TemporalAdjusters.firstDayOfNextYear():将年份和日期调整为下一年的第一天
LocalDateTime.now().with(TemporalAdjusters.firstDayOfYear()); // 2023-01-01T14:11:27.062

  1. 使用withadjustInto方法,通过TemporalAdjuster的实现类比如使用MonthDay来调整时间。后面的调整日期、时分秒都可以借鉴下面的方法来实现。
MonthDay lastDayOfMonth = MonthDay.of(12, 31);
LocalDateTime with = LocalDateTime.now().with(lastDayOfMonth);
// 等价于
LocalDateTime adjustInto = (LocalDateTime) lastDayOfMonth.adjustInto(LocalDateTime.now());




月初月末

  1. 使用TemporalAdjusters
LocalDateTime.now().with(TemporalAdjusters.lastDayOfMonth()); // 2023-10-31T14:34:01.958

  1. 通过ChronoField类实现
    这种方法只能用来计算月初。(年月也可以通过这种方式来实现,不过有了MonthDay就没有必要那么麻烦了)。
LocalDateTime with = LocalDateTime.now().with(ChronoField.DAY_OF_MONTH, 1);

  1. 通过YearMonth类实现
    与计算年初、年末、月初不同,月末是一个浮动值(28-31),需要根据是否是闰年,是年份的第几个月来最终确认月末值,手工实现比较麻烦。不过Java8中有很多类已经完成了这类计算。

比如使用YearMonth自带的月初月末计算:

YearMonth yearMonth = YearMonth.now();
// 当然月初也可以用这种形式,不过也挺麻烦的
LocalDate startOfMonth = yearMonth.atDay(1);
LocalDate endOfMonth = yearMonth.atEndOfMonth();
boolean leapYear = yearMonth.isLeapYear();

YearMonth的方法可能并不能直接得到想要的结果,需要我们再转换一次时间:

LocalDateTime now = LocalDateTime.now();
LocalDateTime with = now.with(YearMonth.from(now).atDay(1));
LocalDateTime adjustInto = (LocalDateTime) YearMonth.from(now).atEndOfMonth().adjustInto(now);




3. 日初日末

日初日末也没那么花俏了,值都是固定不变的,日初就是00:00:00.000,日末就是23:59:59.999,withadjustInto方法随便用,能达成目标即可。

  1. 使用LocalDate.atStartOfDay()方法,不过只有转换日初,没有转换日末的atEndOfDay() 这种方法
LocalDateTime startOfDay = LocalDateTime.now().toLocalDate().atStartOfDay();
LocalDateTime startOfDay1 = LocalDate.now().atStartOfDay();

  1. 使用LocalDate.atTime()设置具体时间。
LocalDateTime min = LocalDate.now().atTime(LocalTime.MIN); // 2023-09-22T00:00 | min = 00:00
LocalDateTime max = LocalDate.now().atTime(LocalTime.MAX); // 2023-09-22T23:59:59.999999999 | max = 23:59:59.999999999

  1. 其他方法。
// 当然也可以这样
LocalDateTime min = LocalDateTime.now().with(LocalTime.MIN);
// 这样
LocalDateTime atDate = LocalTime.MAX.atDate(LocalDateTime.now().toLocalDate());
// 甚至你也可以直接设置时间
LocalDateTime with = LocalDateTime.now().with(LocalTime.of(0, 0, 0));
LocalDateTime adjustInto = (LocalDateTime) LocalTime.of(23, 59, 59).adjustInto(LocalDateTime.now());




简单总结了下日常碰到的Java8用得到的方法。欢迎补充评论,谢谢!

http://www.yidumall.com/news/80671.html

相关文章:

  • 广州网站建设制作谷歌seo网站推广怎么做
  • 网站项目开发建设合同全国人大常委会副委员长
  • 免费博客网站有哪些如何在百度推广
  • 怎样才能制作网站最新国内新闻重大事件
  • 一个网站怎么做流量统计哪些店铺适合交换友情链接
  • 秦州建设网站今日头条武汉最新消息
  • 自己做自己的私人网站百度seo排名优化公司哪家强
  • 淄博网站建设服务商宁德市自然资源局
  • 学做宝宝衣服的网站百度人工客服电话多少
  • 可信网站行业验证必须做吗如何查询域名注册人信息
  • 网站优化外包顾问国际最新新闻热点事件
  • 茂名做网站网店网络营销策划方案
  • 安徽网站建设费用百度seo优化包含哪几项
  • 国家电网网站制作建站服务
  • 做电影资源网站短视频seo公司
  • 宝安西乡网站建设西安seo顾问公司
  • 如何做网站推广雷公钻今日热搜第一名
  • 网站的动态文字是怎么做的行业网站网址
  • 怎么做app界面设计网络seo关键词优化技巧
  • 网站的建设费用预算搜索推广广告
  • 哪些网站做推广比较有效果百度风云榜
  • 企业网站建设之后响应式网站模板的应用
  • 一站式网站建设与运营正规网络推广服务
  • 如何做cad图纸模板下载网站网络推广常见的方法
  • 企业网站设计注意事项兰州网络推广
  • 太原网站建设晋icp备优化关键词的公司
  • 专业做网站公司 前景googleplay商店
  • 白石龙做网站丹东seo推广优化报价
  • 所有爱做网站aso优化技术
  • 聊城做网站公司信息中国新闻网最新消息