加工元データ
|NO|CATEGORY|PRICE|
|:--|:--|:--|
|1|Apple|100|
|2|Apple|100|
|3|Apple|100|
|4|Banana|100|
|5|Banana|100|
|6|Banana|100|
|7|Banana|100|
|8|Peach|100|
|9|Peach|100|
|10|Peach|100|
加工後データ(CSV)
|NO|CATEGORY|PRICE|
|:--|:--|:--|
|1|Apple|100|
|2|Apple|100|
|3|Apple|100|
||小計|300
|4|Banana|100|
|5|Banana|100|
|6|Banana|100|
|7|Banana|100|
||小計|400|
|8|Peach|100|
|9|Peach|100|
|10|Peach|100|
||小計|300|
したいことの説明
【加工元データ】のカテゴリー別の小計を計算するループ処理で、
各カテゴリーの下に小計の行を追加したいです。 *【加工後データ(CSV)参照】
Java
1@Getter 2@Setter 3class SumTable{ 4 private Integer no; 5 private String category; 6 private Integer price; 7} 8 9// 加工元データリスト 10List<SumTable> list = 加工元データをリストで取得; 11 12// 加工後データ格納リスト 13List<SumTable> csvList = new List<SumTable>(); 14 15// 集計処理 16Map<String,SumTable> map = new LinkedHashMap<>(); 17for(SumTable s : list){ 18 if(map.containsKey(s.getCategory())){ 19 20 } else { 21 22 } 23} 24 25// CSV出力 26return convertCsv(csvList);
小計行について
・No列の値は空文字
・Category列はCategory
・Price列はCategory別の合計
理想
本当に聞きたいことは、カテゴリーの列は複数あって
カテゴリー1>カテゴリー2>カテゴリー3ごとの集計をとる必要があります。
その点の背景を考慮していただきご教授していただけると非常に助かります。
回答1件
あなたの回答
tips
プレビュー