Java list对象转map 多字段做key
时间: 2024-09-20 08:14:02 浏览: 39
Java lambda list转换map时,把多个参数拼接作为key操作
5星 · 资源好评率100%
在Java中,将List转换为Map并使用多个字段作为键通常涉及到创建一个自定义的对象,这个对象有两个或更多的属性,然后通过这些属性组合成唯一的键值对。下面是一个简单的例子:
```java
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
class MyClass {
private String field1;
private int field2;
// 构造函数、getters和setters...
}
public class Main {
public static void main(String[] args) {
List<MyClass> myList = new ArrayList<>();
// 假设list里已经填充了MyClass实例
Map<String, Integer> map = new HashMap<>();
for (MyClass obj : myList) {
String key = obj.getField1() + "_" + obj.getField2(); // 合并两个字段作为键
map.put(key, obj.getIdOrAnotherUniqueValue()); // 用另一个唯一标识作为值
}
}
}
```
在这个示例中,`field1`和`field2`结合生成了唯一的键(例如 "value1_42"),然后`getIdOrAnotherUniqueValue()`方法返回的是一个可以在Map中使用的值。
阅读全文