Java时间,如何确定最后的日期
Posted
技术标签:
【中文标题】Java时间,如何确定最后的日期【英文标题】:Java time, how decide what date is last 【发布时间】:2017-03-16 22:02:05 【问题描述】:我需要使用 java.time。我在 LocalTime 中有几个日期,我需要决定哪个是最后一个。你知道我可以使用什么类吗?到目前为止我是绿色的(我正在学习 java,这是我在 *** 上的第一个问题),试图查看 oracle 文档但找不到这个。 我
【问题讨论】:
util.Date 类,使用列表并排序... “我有几个约会”是什么意思?你有一些Date
实例?一些字符串?记住一些日期?你有一些实际的代码吗?
你能说得更具体点吗?到目前为止我是绿色的是什么意思??
@ΦXocę웃Пepeúpaツ 这个人只是说他使用了一个高级的标准库,比如java.time
,你推荐旧的、慢的和不推荐的util.Date
?为什么?
我需要使用 java.time 而不是 java.Date
【参考方案1】:
如果我理解您的要求,您有一个 LocalTime
集合,并且您希望获得该集合中最大的(即最新的)。如果这是正确的,那么在 Java 8 中,您可以使用以下内容:
Optional<LocalTime> latest = timeCollection.stream().max(Comparator.naturalOrder());
它返回一个Optional
以允许空集合。
【讨论】:
对于初学者问题来说,使用流、比较器和 Optional 是多余的。【参考方案2】:对于 Stack Overflow,这是一个糟糕的问题,因为您应该花一些时间学习编程的基础知识(集合、循环、比较、排序)。我建议阅读Oracle Java Tutorials。
快速回答……
收集你的物品。
List<LocalTime> times = new ArrayList<>();
times.add( oneLocalTime );
times.add( anotherLocalTime );
使用Collections
中的实用方法对您的收藏集进行排序。
Collections.sort( times );
访问列表中的第一个元素为最早,最后一个元素为最新。
LocalTime earliest = times.get( 0 );
LocalTime latest = times.get( times.size() - 1 );
【讨论】:
以上是关于Java时间,如何确定最后的日期的主要内容,如果未能解决你的问题,请参考以下文章