5

我正在使用 Eclipse,并且已将其添加google-collect.1.0-rc2.jar为引用库。然而不知何故,这仍然行不通:

import com.google.common.collect.HashBiMap;

public class Odp {        
    //...
    
    HashBiMap<Character, Integer> charOcc =
        HashBiMap<Character, Integer>.create();    
}

Eclipse 给出以下错误:

此行有多个标记

  • HashBiMap 无法解析
  • Character.Integer 无法解析
  • 标记“,”,“。”的语法错误 预期的
  • 标记 "." 的语法错误,删除此标记
  • 类 Odp 的方法 create() 未定义

我究竟做错了什么?

其他谷歌的东西,比如 Joiner,工作正常。(但 Joiner 不是通用的。)

4

1 回答 1

20

调用静态泛型函数时,不传递类型参数:

 HashBiMap<Character, Integer> charOcc = HashBiMap.create();

而且你真的不应该对实现类进行编码,所以你最好这样做

 Map<Character, Integer> charOcc = HashBiMap.create();

或者

 BiMap<Character, Integer> charOcc = HashBiMap.create();
于 2009-10-07T19:10:08.707 回答