Pergunta

Estou usando o eclipse e adicionei google-collect.1.0-rc2.jar como uma biblioteca referenciada. No entanto, de alguma forma, isso ainda não funciona:

import com.google.common.collect.HashBiMap;

public class Odp {        
    //...

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

Eclipse dá os seguintes erros:

Vários marcadores nesta linha

  • HashbiMap não pode ser resolvido
  • Personagem.Integer não pode ser resolvido
  • Erro de sintaxe no token "," "". esperado
  • Erro de sintaxe no token ".", Exclua este token
  • O método create () é indefinido para a classe ODP

O que estou fazendo errado?

Outras coisas do Google, como Joiner, funcionam bem. (Mas Joiner não é genérico.)

Foi útil?

Solução

Ao chamar funções genéricas estáticas, você não passa os parâmetros de tipo:

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

Além disso, você não deve codificar a classe de implementação, então é melhor fazer

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

ou

 BiMap<Character, Integer> charOcc = HashBiMap.create();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top