【发布时间】:2019-05-07 06:46:18
【问题描述】:
我有很简单的事情要做,我有这样的人名单:
[{
name: John,
date: 01-01-2018,
attend: true
},
{
name: Adam,
date: 01-01-2018,
attend: false
},
{
name: Adam,
date: 01-02-2018,
attend: true
},
{
name: JOHN,
date: 01-02-2018,
attend: false
}]
这个数组的结果应该是:Adam (true), John (false)
所以我需要返回用户的最新条目列表,在这种情况下,约翰首先确认他正在参加,然后他改变主意并告诉他没有参加所以我要返回他的最后一个条目(请注意,有时写的是 JOHN,有时写的是 John,但它是同一个人,这有点棘手)
我的问题是过滤掉这种列表的最佳方法是什么,我正在考虑应用“按属性 java 流唯一”,但首先需要按日期降序和名称(大写/小写)对人员进行排序,然后我需要以某种方式获取最新条目。
有人知道什么是最好的方法吗?
【问题讨论】:
-
提示:使用标准 ISO 8601 格式格式化日期字符串:YYYY-MM-DD。这些格式专为数据交换而设计,避免了歧义,使机器易于解析,人类易于跨文化阅读。在解析/生成文本时,这些格式默认在 java.time 类中使用。
-
是的,格式已经是这样了,但是我写的时候出错了,反正在这种情况下根本不重要,但是谢谢你的建议
标签: java arrays java-8 java-stream