为什么我不能访问 id
财产 Device
?
final List<Device> devicesList = jsonFileHandlerDevice.getList();
ConcurrentMap<Integer, Device> map =
devicesList.stream()
.collect(Collectors.toMap(item -> item.id, item -> item));
哪里
public class Device {
public MobileOs mobileOs;
public Integer id;
public Device() {
}
public Device(MobileOs mobileOs, double osVersion, int allocatedPort, Integer id, String uuid) {
this.mobileOs = mobileOs;
this.id = id;
}
}
请看这里:
1条答案
按热度按时间7vhp5slm1#
你收到了一条误导性的错误信息。实际错误是使用
ConcurrentMap<Integer, Device>
当收集器返回的类型为Map<Integer, Device>
.如果你想退货
Map
成为一个ConcurrentMap
,您可以使用toMap
接受供应商的变量(确定供应商的类型)Map
待退回)。这样的方法应该有用:
或者正如亚历克西斯所说,只要使用
Collector.toConcurrentMap
.