データベースからいくつかの値を取得しています。これらの値をリストに追加してから、値に基づいて特定のキーを使用してMAPに追加する必要があります。たとえば、
row 1 name = "A" category = "1"
row 2 name = "B" category = "2"
row 3 name = "C" category = "1"
row 4 name = "D" category = "3"
行1と行3をリストに入れ、行2と行4をそれぞれ別々のリストに入れてから、これら3つのリストをMAPに入れ、カテゴリ名(1、2、3)をMAPのキーとして使用する必要があります。
MAP
1 LIST1 (values of 2 rows)
2 LIST2 (values of 1 row)
3 LIST3 (values of 1 row)
それらをリストとMAPに追加する方法がわかりません。私の制約は、値を取得するたびに同じ行が取得されるわけではないため、取得された各カテゴリの値を保持するために、毎回異なる数のリストが必要になる可能性があることです。
私のコードは次のとおりです、
ResultSet rs = st.executeQuery(SelectRows);
Map map = new HashMap();
if(rs.next())
{
item.setRowID(rs.getString("ID"));
item.setName(rs.getString("Name"));
item.setValue(rs.getString("Value"));
item.setCat(rs.getString("Cat"));
if(!map.containsKey(rs.getString("Cat"))){
map.put(rs.getString("CatID"), new ArrayList());
}
map.get(rs.getString("CatID")).add(row);
}
最後の行でこのエラーが発生します>""メソッドadd(Rows)はタイプObjectに対して未定義です。同じエラーが発生したリストにオブジェクトを追加しても、メソッドadd(List)はタイプObjectに対して未定義です。