Pregunta

Estoy usando Eclipse, y he añadido google-collect.1.0-rc2.jar como una biblioteca de referencia. Sin embargo, de alguna manera esto sigue sin funcionar:

import com.google.common.collect.HashBiMap;

public class Odp {        
    //...

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

Eclipse da los siguientes errores:

  

múltiples marcadores en esta línea

     
      
  • HashBiMap no se puede resolver
  •   
  • Character.Integer no se puede resolver
  •   
  • Error de sintaxis en el símbolo " """. espera
  •   
  • Error de sintaxis en el símbolo "", eliminar este token
  •   
  • El método create () está definido para la clase Odp
  •   

¿Qué estoy haciendo mal?

Google Otras cosas, como Joiner, funciona bien. (Pero Joiner no es genérico.)

¿Fue útil?

Solución

Cuando se llama a las funciones genéricas estáticas, no pasa los parámetros de tipo:

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

También realmente no se debe codificar a la clase de implementación, por lo que es mejor hacer

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

o

 BiMap<Character, Integer> charOcc = HashBiMap.create();
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top