Map<String,Map<Integer,HashSet<String>>>
时间: 2023-10-14 10:12:18 浏览: 136
List Set Map以及子类的比较 .docx
这是一个Java中的数据结构,它包含了三个层级:第一层级是一个字符串类型的键,第二层级是一个整数类型的键,第三层级是一个字符串类型的HashSet。可以理解为一个嵌套的字典结构,其中第一层级的字符串是主键,第二层级的整数是次键,第三层级的HashSet则是值的集合。可以通过以下方式访问和操作这个数据结构的元素:
1.获取第一层级的所有键:
```
Set<String> keys1 = map.keySet();
```
2.获取第二层级的所有键:
```
Map<Integer, HashSet<String>> map2 = map.get(key1); // key1为第一层级的某个键
Set<Integer> keys2 = map2.keySet();
```
3.获取第三层级的所有值:
```
HashSet<String> set = map2.get(key2); // key2为第二层级的某个键
```
4.添加元素:
```
if(map.containsKey(key1)){
Map<Integer, HashSet<String>> map2 = map.get(key1);
if(map2.containsKey(key2)){
HashSet<String> set = map2.get(key2);
set.add(value);
}else{
HashSet<String> set = new HashSet<>();
set.add(value);
map2.put(key2, set);
}
}else{
HashSet<String> set = new HashSet<>();
set.add(value);
Map<Integer, HashSet<String>> map2 = new HashMap<>();
map2.put(key2, set);
map.put(key1, map2);
}
```
其中,key1、key2和value均为具体的键和值。
阅读全文