Java: Crear una instancia de Google HashBiMap Colección
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.)
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