例: 1 つのクエリが次の結果セットをスローします。
名前 | 年齢 | 総計
- ジョン・スミス、45歳、1000歳
- ジョン・スミス、56歳、800歳
- ジョン・スミザーズ、34歳、500歳
- ジョン・スミス、56歳、500歳
- ジョン・スミス、56歳、1100年
この配列リストを 3 つに分割し、キーがクライアント名であるハッシュマップに格納します。
みたいなことを考えていた
Arraylist<Row> rows = dao.getClientActivity();
Map map = new HashMap<Clients Name, Clients Row>();
Arraylist<Row> = null;
for (Row row : rows){
if (map.get(row.clientName) == null) list = new ArrayList<Row>();
list.add(row);
if(map.get(row.clientName) == null) map.put(row.clientName, list);
}
リストは常に名前順にソートされます。
上のスニペットを疑似コードとして取り上げます。家にコーディング プログラムはありません。頭のてっぺんからそれを手に入れました。今週の金曜日にそのようなものをテストしたと思いますが、行にしか印刷されませんでした。
これを行うためのより良い方法があるかどうかはわかりませんが、これが最初に思いついたものです。