それだったら SortedSet<日付> 使わずに
SortedMap<日付, List<項目>> で行けそうな感じもする。

もっとも、1つ前の日付とか1つ後の日付ならともかく、
3つ前とか 4つ後とかだと面倒くさい。

Map<日付, Integer> m; List<List<項目>> l; とかして
l.get(m.get(key)).get(1)
l.get(m.get(key)).get(2)
l.get(m.get(key) - 1).get(1)

とか、そんな感じの方が良いか。