这是我正在查看的代码(使用Google的ImmutableMap)
ImmutableMap.<String,String>of();
这是什么意思?做的意义是什么
Class.<GenericType>methodName()?
ImmutableMap
是一个泛型类,具有两个类型参数,K
和 V
。此语法给出了两个参数的具体值,在本例中String
这两个参数。
所以上面返回了一个空的String
到String
的地图。
参见 JLS 15.2,其中说方法调用是
方法调用: 类型名称 .NonWildTypeArguments Identifier ( ArgumentListopt )
此处的类型参数String
和String
它用于在类型推断不起作用时指定泛型类型,例如:
Map<String, String> m = ImmutableMap.of();
Map<String, String> m2 = ImmutableMap.<String, String>builder().build();
它参数化方法返回值的泛型类型。