Java 条目是原始类型。泛型类型映射的引用<;K、 V>;。进入<;K、 V>;应该是

Java 条目是原始类型。泛型类型映射的引用<;K、 V>;。进入<;K、 V>;应该是,java,Java,我在地图中使用arrayList分配双键,并试图从地图中检索数据,但下面出现了此错误。我怎样才能让它工作 这条线上有多个标记 -条目是原始类型。对泛型类型映射的引用。条目应为 参数化 -类型不匹配:无法从对象转换为映射。项 Map Map=newhashmap(); 否则{ Map mapResult=db.detectRoute(latD,longD); 迭代器it=mapResult.entrySet().Iterator(); while(it.hasNext()){ //错误从这里开始。

我在地图中使用arrayList分配双键,并试图从地图中检索数据,但下面出现了此错误。我怎样才能让它工作

这条线上有多个标记 -条目是原始类型。对泛型类型映射的引用。条目应为 参数化 -类型不匹配:无法从对象转换为映射。项

Map Map=newhashmap();
否则{
Map mapResult=db.detectRoute(latD,longD);
迭代器it=mapResult.entrySet().Iterator();
while(it.hasNext()){
//错误从这里开始。
条目e=it.next();
双距离=entry.getkey();
ArrayList值=entry.getValue();
}

好吧,停止使用原始类型:

Map<Double, ArrayList<Integer>> mapResult = db.detectRoute(latD, longD);
Iterator<Map.Entry<Double, ArrayList<Integer>>> it = mapResult.entrySet().iterator();
while (it.hasNext()) {
    Map.Entry<Double, ArrayList<Integer>>> e =  it.next();
    Double distance = entry.getKey();
    ArrayList<Integer> value = entry.getValue();
}
Map mapreult=db.detectRoute(latD,longD);
迭代器it=mapResult.entrySet().Iterator();
while(it.hasNext()){
Map.Entry>e=it.next();
双距离=entry.getKey();
ArrayList值=entry.getValue();
}
或者更简单:使用foreach循环:

Map<Double, ArrayList<Integer>> mapResult = db.detectRoute(latD, longD);
for (Map.Entry<Double, ArrayList<Integer>>> entry : mapResult.entrySet()) {
    Double distance = entry.getKey();
    ArrayList<Integer> value = entry.getValue();
}
Map mapreult=db.detectRoute(latD,longD);
对于(Map.Entry>Entry:mapResult.entrySet()){
双距离=entry.getKey();
ArrayList值=entry.getValue();
}
甚至更简单,使用Java 8:

Map<Double, ArrayList<Integer>> mapResult = db.detectRoute(latD, longD);
mapResult.forEach((distance, value) -> {
    // ...
});
Map mapreult=db.detectRoute(latD,longD);
mapResult.forEach((距离,值)->{
// ...
});

同时阅读

好吧,停止使用原始类型:

Map<Double, ArrayList<Integer>> mapResult = db.detectRoute(latD, longD);
Iterator<Map.Entry<Double, ArrayList<Integer>>> it = mapResult.entrySet().iterator();
while (it.hasNext()) {
    Map.Entry<Double, ArrayList<Integer>>> e =  it.next();
    Double distance = entry.getKey();
    ArrayList<Integer> value = entry.getValue();
}
Map mapreult=db.detectRoute(latD,longD);
迭代器it=mapResult.entrySet().Iterator();
while(it.hasNext()){
Map.Entry>e=it.next();
双距离=entry.getKey();
ArrayList值=entry.getValue();
}
或者更简单:使用foreach循环:

Map<Double, ArrayList<Integer>> mapResult = db.detectRoute(latD, longD);
for (Map.Entry<Double, ArrayList<Integer>>> entry : mapResult.entrySet()) {
    Double distance = entry.getKey();
    ArrayList<Integer> value = entry.getValue();
}
Map mapreult=db.detectRoute(latD,longD);
对于(Map.Entry>Entry:mapResult.entrySet()){
双距离=entry.getKey();
ArrayList值=entry.getValue();
}
甚至更简单,使用Java 8:

Map<Double, ArrayList<Integer>> mapResult = db.detectRoute(latD, longD);
mapResult.forEach((distance, value) -> {
    // ...
});
Map mapreult=db.detectRoute(latD,longD);
mapResult.forEach((距离,值)->{
// ...
});

也请阅读

它可以工作,谢谢,但是有输入错误
getkey()
-->
getkey();
它可以工作,谢谢,但是有输入错误
getkey()
-->
getkey();