之间有什么区别
Map map = new HashMap<>();
和
a=20;
哪种更好用,为什么?
答案 0 :(得分:0)
规范HashMap<Long, String>()
仅适用于参数类型。但是你显示的两个用例都很糟糕(我只是称之为错误),因为map
对象没有参数类型。你应该做的是
Map<Long, String> map = new HashMap<Long, String>();
与
相同Map<Long, String> map = new HashMap<>();
这两行之间的唯一区别是你是否想要依赖JDK的自动类型推断。
<强>附录:强>
答案 1 :(得分:0)
确实应该是Map<Long, String> map = new HashMap<>();
<>
中的2个字段代表地图的键和值类型。所以在这个例子中,它是一个由Long值引用的字符串映射。将它们包含在声明中会强制Map确保地图只能具有特定的键/值类型。过去,类型必须包含在赋值的<>
中,但自Java 7以来就不需要它。