0

我想指定这种类型:

Map<String,Map<String,String>> blah = null;

但 Eclipse 拒绝这样做。我不确定它是 Eclipse 还是 Java 解析器。

我在学习时尝试编写自己的 java 解析器时遇到了类似的问题:“>>”被视为移位运算符。

这里发生了什么?

编辑:java适用于此。

4

2 回答 2

1

这可能是因为您的 Eclipse 设置为使用没有泛型的 java 1.4 编译器版本。

如果你只是这样做,它会起作用吗

Map<String,String> map = null;

编辑:在eclipse中设置 在此处输入图像描述

于 2011-03-23T11:14:46.917 回答
0

对我来说没问题,因为expexted...

确实,您可以肯定地定义嵌套泛型,就像您正在做的那样

Map<String,Map<String,String>> blah = null;

这样做的事件不会引起问题

Map<String,Map<String,Map<String,String>>> blah = null;

不是嵌套泛型的问题(Java 支持这个特性),而是泛型支持的问题。确保在 Eclipse 中为您的编译器设置正确的设置,您必须至少设置 java 1.5 才能启用泛型。(Windows->Preferences->Java-Compiler 然后检查版本)。

于 2011-03-23T11:20:48.750 回答