【发布时间】:2014-02-28 19:55:35
【问题描述】:
我第一次使用 EnumMap,不明白参数传递实际上在做什么。据我所知,它只是“K.class”,其中 K 是映射键。这工作得很好,但我在 Java 的其他任何地方都没有看到过,而且我不清楚它在构造中实际扮演什么角色。
我猜这是一个理论上的问题,因为代码运行:“K.class”参数是什么意思,EnumMap 需要它做什么?
【问题讨论】:
-
哪部分不明白?
-
<K, V>将在编译器应用类型擦除后从Map<K, V>消失。但是,在运行时,Map实现需要确切地知道你在说什么枚举类。所以你必须指定类。