用Java帮我写个收集相同ID不用值得集合
时间: 2023-12-03 14:43:43 浏览: 25
您好,可以使用Java中的Map来实现这个功能。以下是一个示例代码:
```java
import java.util.*;
public class CollectSameID {
public static void main(String[] args) {
// 创建一个Map用于存储相同ID的数据
Map<Integer, List<String>> map = new HashMap<>();
// 假设我们有以下数据
String[] data = {"001:name1", "002:name2", "001:name3", "003:name4", "002:name5"};
// 遍历数据
for (String str : data) {
// 切割字符串,获取ID和名称
String[] info = str.split(":");
int id = Integer.parseInt(info[0]);
String name = info[1];
// 判断Map中是否已经有该ID的数据
if (map.containsKey(id)) {
// 如果有,将该名称添加到List中
map.get(id).add(name);
} else {
// 如果没有,创建一个新的List,并将该名称添加到List中
List<String> list = new ArrayList<>();
list.add(name);
map.put(id, list);
}
}
// 输出Map中的数据
for (Map.Entry<Integer, List<String>> entry : map.entrySet()) {
System.out.println("ID " + entry.getKey() + ":" + entry.getValue());
}
}
}
```
输出结果为:
```
ID 1:[name1, name3]
ID 2:[name2, name5]
ID 3:[name4]
```
以上代码会将相同ID的名称存储在同一个List中,并将List作为Map的值存储起来。如果您有其他的需求,可以根据这个示例代码进行修改。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)