前言:
上一篇文章我们给出的面试题是 容易被忽略的java浮点类型隐式操作,网易面试基础「一道题系列」 ,可能是周末的原因,也可能是大家感觉对浮点类型的认知比较高所以文章表现反响平平。这里我就不做过多的解释了,直接给出答案。
上篇文章答案:
运行结果: false。
解答: 因为在java中浮点类型的数据有些是不能精确的表示出来的。
本期话题:
前段时间连续发表了五篇针对JAVA工程师的面试题,各位看官阅读后反映很不错,也都很积极的在留言板中参与讨论,在这里我对大家的支持表示感谢。
在大家日常工作中针对日期时间的操作应该是很多的,而且一些关键数据的存储和操作都需要保存当时的操作时间以便后期核对,针对关键数据在高并发情况下的时间处理一直是java中的诟病。随着 JDK 版本的不断升级迭代,在实际应用中我们需要根据不同的JDK版本做相应的变更,以便以最少的代价和最好的方式去操作时期时间,因此本篇文章应运而生,这篇文章将要讲的是 JDK1.7与JDK1.8中针对日期时间类型使用的不同 ,话不多说我们直接来实例代码。
一、如何获取年月日、时分秒?
JDK1.7中我们可以创建java.util.Calendar对象实例,调用其提供的get方法传入不同的参数获取对应的值。
JDK1.8中我们可以使用java.time.LocalDateTimel对象实例来获取相应的日期时间值。
二、如何获取当前日期时间毫秒数?
三、如何获取当前月份的最后一天或者本月份的一共多少天?
四、日期时间的格式化
JDK1.7及之前版本我们使用java.text.DataFormat 的子类(如SimpleDateFormat类)进行日期时间的格式化。
JDK1.8之后我们可以使用java.time.format.DateTimeFormatter来进行日期时间的格式化。
在JDK1.8之后JAVA引入了很多新的针对日期时间的API,例如:
java.time.LocalDate
java.time.format.DateTimeFormatter
这些类在设计的时候都针对高并发情况下的 线程安全 进行了处理,因此大家可以放心的使用。
以上便是我们本期文章讲述的内容,欢迎大家在留言板内讨论或者进行指正。
结语
欢迎喜欢技术问题或者对面试相关问题感兴趣的朋友关注本头条号,有兴趣的朋友也可以在私信或者留言板告诉我在面试过程中遇到的有意思的题目或你认为比较难的题目,也可以告诉我大家感兴趣的技术内容,我会总结出来与大家进行分享。
最后感谢大家的阅读。