作者:odile微笑头 | 来源:互联网 | 2022-11-24 12:58
我已经知道如何HashMap
使用以下两种方法之一来初始化Java
// way 1: apply generic type saftey
HashMap hashMap1 = new HashMap();
// way 2: general without apply generic type saftey
HashMap hashMap2 = new HashMap();
我的问题
什么是最佳做法
根据Eclipse Marker
类型安全:HashMap类型的表达式需要未经检查的转换以符合HashMap
所以建议使用
new HashMap();
但根据Sonar Linter的说法
使用菱形运算符("<>")替换此构造函数调用中的类型规范.
所以建议使用
new HashMap();
哪一个是最好的?为什么?
1> Anton Hlinis..:
使用Java 7钻石运算符:
HashMap hashMap2 = new HashMap<>();
Diamond <>允许编译器隐式推断类型
请参阅:通用实例创建的类型推断