【发布时间】:2019-09-01 15:24:33
【问题描述】:
我想用两个 ArrayList 填充一个身份哈希图,一个称为字符串类型的 barve,另一个是嵌套的 ArrayList,称为 TockaXY 类型的集群。
我正在尝试使用 for 循环和 .put 但是,eclipse 说:
The method put(List<String>, List<List<Main.TockaXY>>) in the type Map<List<String>,List<List<Main.TockaXY>>>
is not applicable for the arguments (String, List<Main.TockaXY>)
代码:
public static List<TockaXY> noviCentri(List<TockaXY> dataset, List<TockaXY> centers) {
List<String> barve = new ArrayList<>();
barve.add("Modra");
barve.add("Rumena");
barve.add("Zelena");
barve.add("Rdeca");
barve.add("Vijola");
barve.add("Crna");
barve.add("Oranzna");
barve.add("Roza");
barve.add("Rjava");
barve.add("Siva");
Map<List<String>, List<List<TockaXY>>> barvniCluster= new IdentityHashMap<List<String>, List<List<TockaXY>>>(centers.size());
List<List<TockaXY>> clusters = new ArrayList<>(centers.size());
for (int d=0; d<centers.size(); d++) {
barvniCluster.put(barve.get(d) ,clusters.get(d));
}
我能做什么?
【问题讨论】:
-
错误消息是预期的,你试图插入一个
String作为一个键,它应该是一个List,并且它应该是一个List<List>的值你是分配一个List