私はキーと値のペアを持つ TreeMap を SessionIdNode として持っています
private class SessionNode
{
String sessionid;
Timestamp time;
private SessionNode (String sessionid, long d)
{
this.time = new Timestamp(d);
this.sessionid = sessionid;
}
public int hashCode()
{
return sessionid.hashCode();
}
public boolean equals(SessionNode node)
{
return this.sessionid.equals(node.sessionid);
}
}
このクラスは、次のように TreeMap で内部的に使用されます。
private final Comparator< SessionNode> sessionNodeComparator = new Comparator<SessionNode>() {
@Override public int compare(SessionNode s1, SessionNode s2)
{
return ((SessionNode)s1).time.compareTo(s2.time);
}
};
private Map <SessionNode , SessionNode> map = new TreeMap <SessionNode , SessionNode>( sessionNodeComparator);
さて、私の質問は、本質的に時間に応じたカスタムコンパレータに基づいてSessionNodesをソートすることです。
ここで、時間 t1 が与えられたとすると、SessionNode タイムスタンプ値 > t1 を持つツリーマップ内のすべてのキーを削除する必要があります。
どうすればこれを達成できますか?? どんな助けでも大歓迎です。
ありがとうございました。