9

我想存储一组int/String值,但ints 不一定是增量的,这意味着数据可以是:

<1, "first">, <3, "second">, <9, "third">. 

因此,我正在尝试创建与 a 等效的 c#,Dictionary<int, string>但它只是无法编译,并在行上说“令牌“int”上的语法错误,此令牌后预期的尺寸”:

private Map<int, String> courses;

谁能告诉我这是为什么?还有一个很好的替代方法是创建一个对象作为 and 的占位符intString然后使用数组来存储它们?

4

1 回答 1

23

您不能将原始类型用作泛型类型参数。

利用

private Map<Integer, String> courses;

在此处查看有关泛型的更多限制。

Dev 的贡献:JLS 规定只有引用类型(和通配符)可以用作泛型类型参数。

于 2013-09-10T22:08:21.857 回答