无法识别Java集合
我是Java新手,在集合上尝试以下代码 我在Eclipse上看到了我在下面的代码中注释为WARNING:的警告无法识别Java集合,java,collections,Java,Collections,我是Java新手,在集合上尝试以下代码 我在Eclipse上看到了我在下面的代码中注释为WARNING:的警告 import java.util.*; public class A { public static void main(String[] args) { LinkedHashMap map = new LinkedHashMap(); // add some values in the map map.put("One",
import java.util.*;
public class A {
public static void main(String[] args) {
LinkedHashMap map = new LinkedHashMap();
// add some values in the map
map.put("One", "1");
// WARNING:
// - Type safety: The method put(Object, Object) belongs to the raw type HashMap. References to generic type HashMap<K,V> should be parameterized
// - The method put(String, String) is undefined for the type LinkedHashMap
map.put("Two", "2");
System.out.println("Map:" + map);
// get key "Three"
System.out.println("" + map.get("Two")); // WARNING: he method get(String) is undefined for the type LinkedHashMap
// get key "Five"
System.out.println("" + map.get("Five"));
}
}
import java.util.*;
公共A类{
公共静态void main(字符串[]args){
LinkedHashMap=新建LinkedHashMap();
//在地图中添加一些值
地图放置(“一”、“一”);
//警告:
//-类型安全:方法put(对象,对象)属于原始类型HashMap。对泛型类型HashMap的引用应参数化
//-未为LinkedHashMap类型定义方法put(String,String)
地图放置(“二”、“二”);
System.out.println(“Map:+Map”);
//获取“三”键
System.out.println(“+map.get(“两”));//警告:对于LinkedHashMap类型,方法get(String)未定义
//获取键“5”
System.out.println(“+map.get”(“五”);
}
}
这是一个来自网站的代码示例,应该是一个简单的示例
我怎么会出错?我怎样才能修好它们
我是Java新手。请带上我 如果使用Java>=7,请立即修复所有警告:
Map<String, String> map = new LinkedHashMap<>();
Map Map=newlinkedhashmap();
否则:
Map<String, String> map = new LinkedHashMap<String, String>();
Map Map=newlinkedhashmap();
首先你应该使用。最好总是使用界面
Map map = new LinkedHashMap();
简单地说,我可以像你有一篮水果一样解释你想在那里储存鲜花吗?
所以你应该申报为
Map Map=newlinkedhashmap()代码>上面说我的地图键是字符串类型,如果是字符串类型,那么就用谷歌搜索你的警告,你会得到很多答案。你可以阅读一个教程来了解发生了什么:你看到的示例可能是2004年之前(Java 5.0问世时)的。集合现在是通用的。@RussellZahniser很好-这就解释了。有点奇怪。谢谢。