まず、宣言を少し修正させてください。
List<Map<String, List<String>>> listOfMapOfList =
new HashList<Map<String, List<String>>>();
HashMap
具象クラス ( ) を 1 回だけ使用したことに注意してください。後で実装を変更できるインターフェイスを使用することが重要です。
今度は要素をリストに追加したいと思いませんか? ただし、要素はマップであるため、作成する必要があります。
Map<String, List<String>> mapOfList = new HashMap<String, List<String>>();
次に、マップにデータを入力します。幸いなことに、リストを作成するユーティリティを使用できます。それ以外の場合は、リストを個別に作成する必要があります。
mapOfList.put("mykey", Arrays.asList("one", "two", "three"));
OK、これでマップをリストに追加する準備が整いました:
listOfMapOfList.add(mapOfList);
しかし:
複雑なコレクションの作成は今すぐやめてください。将来について考えてみてください。おそらく、内部マップを別のものに変更したり、リストを設定したりする必要があります。これにより、おそらくコードの重要な部分を書き直す必要があります。代わりに、データを含むクラスを定義してから、それを 1 次元コレクションに追加します。
クラスを呼び出しましょうStudent
(例として):
public Student {
private String firstName;
private String lastName;
private int studentId;
private Colectiuon<String> courseworks = Collections.emtpyList();
//constructors, getters, setters etc
}
これで、単純なコレクションを定義できます:
Collection<Student> students = new ArrayList<Student>();
将来、キーが であるマップに生徒を配置したい場合は、次のstudentId
ようにします。
Map<Integer, Student> students = new HashMap<Integer, Student>();