【发布时间】:2019-10-17 09:53:11
【问题描述】:
我从这个网站直接复制了这段代码:https://www.w3schools.com/java/showjava.asp?filename=demo_hashmap_loop_key
但它仍然给出了上面提到的错误:'for (String i : capitalCities.keySet())!'
有人知道如何改正这个错误吗??
import java.util.HashMap;
public class MyClass {
public static void main(String[] args) {
HashMap capitalCities = new HashMap();
capitalCities.put("England", "London");
capitalCities.put("Germany", "Berlin");
capitalCities.put("Norway", "Oslo");
capitalCities.put("USA", "Washington DC");
for (String i : capitalCities.keySet()) {
System.out.println(i);
}
}
}
【问题讨论】:
-
使用
HashMap<String, String> capitalCities = new HashMap<>();。 -
是的,斯劳先生,谢谢!!令人惊讶的是,在 Java 教程网站上犯了这样的错误,不是吗?
-
我认为这是一个渲染问题。如果您查看页面源代码,您会看到它使用参数化类型,它只是没有显示
<...>,可能是由于所使用的 HTML 存在一些问题。另外,如果您想了解更多关于参数化类型与原始类型的信息,请查看What is a raw type and why shouldn't we use it?。 -
这是一个渲染问题。 Firefox 中的 view-source:w3schools.com/java/showjava.asp?filename=demo_hashmap_loop_key 显示实际行是
HashMap<String, String> capitalCities = new HashMap<String, String>();。
标签: java string object mismatch