【发布时间】:2018-04-07 11:30:51
【问题描述】:
我有一个关于实例化地图时的一些语义的问题。具体来说,在分配键值类型时应该使用 Wrapper 类,还是可以使用原始类型?
示例:
Map<int, String> map = new TreeMap<int, String>();
或
Map<Integer, String> map = new TreeMap<Integer, String>();
示例:
Map<int[], String> map = new TreeMap<int[], String>();
或
Map<Integer[], String> map = new TreeMap<Integer[], String>();
这两个实例在约定和含义方面有什么区别吗?我知道在读取或写入对象时使用原始类型会调用自动装箱。
【问题讨论】:
-
您是否尝试过这些选项中的任何一个以查看哪些选项实际编译?
-
欢迎来到 SO。您至少可以检查发布的任何代码 sn-ps 是否编译。
-
实现编译后只允许Wrapper类。