我已经工作了一整天,但不知怎的,我无法弄清楚这个可能很容易的任务——可能是因为缺少咖啡……
我有一个synchronizedList
存储一些对象的地方。这些对象有一个field
类似于 ID 的东西。这些对象携带有关用户及其当前状态(简化)的信息。
关键是,我只想为每个用户提供一个对象。因此,当该用户的状态发生变化时,我想删除“旧”条目并将新条目存储在List
.
protected static class Objects{
...
long time;
Object ID;
...
}
...
if (Objects.contains(ID)) {
Objects.remove(ID);
Objects.add(newObject);
} else {
Objects.add(newObject);
}
显然这不是要走的路,但应该说明我在寻找什么......
也许数据结构不是最好的,但欢迎任何帮助!
编辑:
添加了一些信息......
A
Set
似乎并不真正符合我的目的。存储除了ID之外的Objects
一些其他字段,这些字段一直在变化。目的是,该列表将以某种方式代表用户的最新活动。我只需要跟踪最后一个状态并只保留描述这种情况的那个对象。我想我会尝试用 a 重新安排我的代码,
Map
看看是否可行......