学习LocalDate对象

LocalDate是Java 8定义的日期对象,在 ISO- 2007-12-03 标准下:他的展示形式为:2007-12-03

LocalDate`是一个不可变的日期时间对象,表示日期,通常被视为年月日。****

1、对象的创建

使用静态方法 now():得到当前系统日期的实例,通常我们使用实例方法,toString() 来显示当前日期作为日期字符串展示。

@Testpublic void nowAndToString(){LocalDate now = LocalDate.now();String nowStr = now.toString();System.out.println(nowStr);}

如果是使用 System.out.println();语句打印,系统默认是打印对象toString()方法的。所以上述代码又可以写成

    @Testpublic void nowAndToString(){//从指定时区的系统时钟获取当前日期。LocalDate now = LocalDate.now();System.out.println(now);//输出结果:2022-02-23}

我们还可以通过静态方法of()来指定日期来创建日期对象。

@Testpublic void of(){int year = 1997;int month = 7;int day = 22;LocalDate date = LocalDate.of(year, month, day);}

通过日期字符串,利用静态方法parse()也可以把创建日期对象。

@Testpublic void parse(){String dateStr = "1997-07-22";LocalDate date = LocalDate.parse(dateStr);}

2、对象的方法

创建出日期对象后,我们可以从日期对象得到许多信息

比如,得到当前日期所在年有多少天

    // 3.lengthOfYear():算出日期所在年有多少天@Testpublic void lengthOfYear(){LocalDate now = LocalDate.now();int daySum = now.lengthOfYear();System.out.println("这一日期所在年有多少天->"+daySum); //365天}

比如,得到日期所在年,月,日,是一年的第几天,周几。

    //getXxx():获取日期的信息@Testpublic void getInfo(){LocalDate now = LocalDate.of(2022,1,9);//1.获取年int year = now.getYear();//2.获取月Month month = now.getMonth();//3.获取月值int monthValue = now.getMonthValue();//4.一年的第几天int dayOfYear = now.getDayOfYear();//5.获取周几DayOfWeek dayOfWeek = now.getDayOfWeek();//6.获取月份字段枚举 根据这个枚举能得到月值int dayOfMonth = now.getDayOfMonth();System.out.println(year); //2022System.out.println(month+"-"+month.getValue()); // FEBRUARY-2System.out.println(monthValue); // 2月System.out.println(dayOfYear); // 54 一年的54天System.out.println(dayOfWeek); // WEDNESDAY 周三System.out.println(dayOfWeek.getValue()); //3 7System.out.println(dayOfMonth);  //23号}

3、日期的偏移

创建出日期对象后,可对日期对象做加减。

    //测试日期偏移量@Testpublic void plusOffSet(){LocalDate now = LocalDate.now();//1.在now日期下加1年LocalDate addOneYear = now.plusYears(1);//1.在now日期下加1月LocalDate addOneMonth = now.plusMonths(1);//1.在now日期下加1天LocalDate addOneDay = now.plusDays(1);//1.在now日期下加1月LocalDate addOneWeek = now.plusWeeks(1);System.out.println(addOneYear);System.out.println(addOneMonth);System.out.println(addOneDay);System.out.println(addOneWeek);System.out.println("-----------------------------");LocalDate delOneYear = now.minusYears(1);LocalDate delOneMonth = now.minusMonths(1);LocalDate delOneDay = now.minusDays(1);LocalDate delOneWeek = now.minusWeeks(1);System.out.println(delOneYear);System.out.println(delOneMonth);System.out.println(delOneDay);System.out.println(delOneWeek);}

4、日期判断

创建出日期对象后,进行一些判断。

    //测试判断@Testpublic void isXxx(){LocalDate now1 = LocalDate.of(2022,1,1);LocalDate now2 = LocalDate.of(2022, 1, 2);//1.日期之前boolean before = now1.isBefore(now2);//2.日期之后boolean after = now1.isAfter(now2);//3.日期相等boolean equal = now1.isEqual(now2);//4.闰年boolean leapYear = now1.isLeapYear();}

5、算出一年的第一个周一

    @Testpublic void test(){int year = 2022;LocalDate date = LocalDate.of(year, 1, 1);int value = date.getDayOfWeek().getValue();LocalDate moneyDate = date.plusDays((7 - value) + 1);System.out.println(moneyDate);}

学习LocalDate对象相关推荐

  1. 深度学习之对象检测_深度学习时代您应该阅读的12篇文章,以了解对象检测

    深度学习之对象检测 前言 (Foreword) As the second article in the "Papers You Should Read" series, we a ...

  2. javascript学习之对象基础

    2019独角兽企业重金招聘Python工程师标准>>> javascript学习之对象基础 面向对象语言 面向对象语言需要向开发者提供四种基本能力 封装:把相关信息(数据和方法)存储 ...

  3. HALCON 21.11:深度学习笔记---对象检测, 实例分割(11)

    HALCON 21.11:深度学习笔记---对象检测, 实例分割(11) HALCON 21.11.0.0中,实现了深度学习方法. 本章介绍了如何使用基于深度学习的对象检测. 通过对象检测,我们希望在 ...

  4. VTK 学习----VTK对象绘制-点(vtkPoints、vtkSphereSource)、线(vtkLine、vtkLineSource)

    VTK 学习----VTK对象绘制-点(vtkPoints.vtkSphereSource).线(vtkLine.vtkLineSource) VTK绘制线段用vtkLine.vtkLineSourc ...

  5. Unity学习之对象池

    Unity学习之对象池 文章目录 Unity学习之对象池 前言 一.对象池是什么? 二.对象池使用步骤 总结 前言 在游戏中,生成大量对象(如子弹)是非常耗性能的,就更不用提事后销毁这些对象. 对象池 ...

  6. LabVIEW上位机学习 面对对象编程实例项目源码 与下位机PLC

    LabVIEW上位机学习 面对对象编程实例项目源码 与下位机PLC,工厂MES通讯,数据库,NI vision视觉等开发,及操作者框架源码可运行,想学习面对对象的可以参考 ID:16199647294 ...

  7. 活动报名丨英伟达AI Lab科学家、GET3D一作高俊:从图像中学习3D对象的生成建模...

    12月12日(周一)上午9:00「青源Live第57期丨英伟达AI Lab科学家.GET3D一作高俊:从图像中学习3D对象的生成建模」将在线举办,多伦多大学博士生.英伟达AI Lab研究科学家高俊做报 ...

  8. 《Java 核心技术卷1 第10版》学习笔记------对象克隆【对象拷贝】

    由于克隆并不太常见,而且有关的细节技术性很强,你可能只是想稍做了解,等真正需要时再深人学习. 先来回忆为一个包含对象引用的变量建立副本时会发生什么 .原变量和副本都是同一个对象的引用: Employe ...

  9. 复杂存储过程学习_对象存储在无人驾驶高精度地图的场景实践

    在自动驾驶领域有这样一个说法:关注自动驾驶的进展,就看高精地图的动态,因为他们才是加速自动驾驶汽车落地的幕后推手.本文介绍了QingStor®️对象存储的种种优势以及许多针对该场景的特性,分享了对象存 ...

最新文章

  1. 《Python编程从入门到实践》学习笔记3:列表
  2. gridsearchcv参数_使用python进行模型参数调优
  3. 什么才是有效的工程教育的方法?
  4. 282天,汇付天下“冲上云霄”
  5. 获得md5加密后的字符串
  6. 判断访问端是否是移动设备
  7. 算法复习——计算几何基础(zoj1081)
  8. 设计模式 之 单例模式
  9. android+水滴粘性动画,Android控件实现水滴效果
  10. 前端基础知识(持续更新中)
  11. 28335scififo中断接收与发送
  12. 没事学学docker(三):配置阿里云镜像加速以及解决docker起不来的问题
  13. 多商户商城系统如何对接电商收付通?
  14. 英特尔核显驱动hd630_hd630相当于什么显卡
  15. 6本通往高级Android开发者必看的英文书籍,附下载地址
  16. 外码一定是被参照表的主码吗?
  17. ATmi-G 公众号机器人 【永久免费】
  18. samba服务器的功能
  19. Web设计网站软件推荐
  20. HQL:求出每个商品的打折天数

热门文章

  1. JQuery基础(一) Mobile优秀网站及资源
  2. 关于扇区、簇、块、页等概念的区分
  3. java基础学习大纲
  4. pytest(四)--测试用例setup和teardown
  5. 实现一个异步清零和置位的D触发器
  6. 雄联盟工程师独家分享:如何使开发更有效率
  7. manjaro下开启免费wifi
  8. Excel教程:为什么我的透视表没法计数、排序、组合?
  9. 吴军硅谷来信-工作效率篇+职业发展
  10. Quartu仿真D触发器并验证