dk7下List<Object[]>转换成Map<String,List>,重复的加到value里
时间: 2023-10-14 10:03:47 浏览: 140
解析xml数组,配置好节点IbpsBankCodeConf/ibps/ibp和xml字符串即可转换成List<Map<?,?>>
在Java 7中,你可以将`List<Object[]>`转换为`Map<String, List>`,并将重复的项添加到值(value)中。下面是一个示例代码:
```java
import java.util.ArrayList;import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Main {
public static void main(String[] args) {
List<Object[]> list = new ArrayList<>();
// 假设这个列表已经被填充了数据
Map<String, List<Object[]>> map = new HashMap<>();
for (Object[] objArray : list) {
String key = objArray[0].toString();
if (map.containsKey(key)) {
map.get(key).add(objArray);
} else {
List<Object[]> values = new ArrayList<>();
values.add(objArray);
map.put(key, values);
}
}
// 打印转换后的Map
for (Map.Entry<String, List<Object[]>> entry : map.entrySet()) {
System.out.println("Key: " + entry.getKey());
System.out.println("Values: " + entry.getValue());
}
}
}
```
在上面的代码中,我们假设`List<Object[]>`已经被填充了数据。我们使用普通的for循环遍历`List<Object[]>`,对于每个`Object[]`,我们将第一个元素转换为String,并作为键(key)。
然后,我们检查Map中是否已经存在该键。如果存在,则将当前`Object[]`添加到对应的值(value)列表中;如果不存在,则创建一个新的值列表,并将当前`Object[]`添加进去,并将键值对放入Map中。
最后,我们遍历转换后的Map,并打印输出每个键和其对应的值。注意,在这个示例中,值的类型是`List<Object[]>`而不是`List`,因为你想将重复的项添加到值中。
阅读全文