複数の要素グループを論理的に含む配列があり、各グループは配列内で連続しています。(データベースの「order by」句を介してソートされました)。最上位のイテレータがグループごとに 1 つの下位レベルのイテレータを返すコレクションのコレクション (大まかな意味で - イテレータのイテレータで問題ありません) としてこれをトラバースするのが最もクリーンです。これは Guava の partition() と同様に機能する可能性がありますが、渡されたコンパレーターを使用して入力を分割する場所を見つけます。
これを行うには、Guava の MultiMap を使用するなど、非効率的な方法がたくさんあります。注文を利用する、簡単で既製の効率的な方法はありますか?