下面的Java代码会不会报错
输出是什么
import java.util.HashMap;
import java.util.Map;
public class Test {
public static void main(String[] args) {
Map map1 = new HashMap();
map1.put("key", new Integer(100));
Map<String, String> map2 = map1;
Integer value = Integer.valueOf(((Object)map2.get("key")).toString());
System.out.println(value);
}
}
1.不会报错
2.输出为:100
其实也不是泛型的问题 第一个Map没有定义泛型默认为 Map<Object,Object> 所以在输出的时候会出现类型转换的异常 所以泛型最好还是指定下