java分组 -- 将相同的数据分为一组
时间: 2023-10-05 19:12:40 浏览: 66
如果你有一些数据,想将它们按照某种规则分成若干组,可以使用Java中的Map和List来实现。具体做法如下:
1. 遍历数据,将相同的数据放到同一个List中,然后以某个标识作为key,将这个List放入Map中。
```java
Map<String, List<Data>> map = new HashMap<>();
for (Data data : dataList) {
String key = data.getKey(); // 获取某个关键字作为分组的标识
if (map.containsKey(key)) {
map.get(key).add(data); // 如果Map中已经有这个key,则将数据添加到对应的List中
} else {
List<Data> list = new ArrayList<>();
list.add(data);
map.put(key, list); // 如果Map中没有这个key,则新建一个List并放入Map中
}
}
```
2. 遍历Map,取出每个List进行处理。
```java
for (Map.Entry<String, List<Data>> entry : map.entrySet()) {
String key = entry.getKey();
List<Data> list = entry.getValue();
// 对每个List进行处理
processList(list);
}
```
其中,Data为要分组的数据类型,getKey()方法返回一个String类型的标识。processList()方法为对每个List进行处理的具体操作,可以根据需要自行实现。