Java: Instantiate Google Collection HashBiMap
Frage
Ich bin mit Eclipse, und ich habe google-collect.1.0-rc2.jar
als referenzierte Bibliothek hinzugefügt. Doch irgendwie dies immer noch nicht funktioniert:
import com.google.common.collect.HashBiMap;
public class Odp {
//...
HashBiMap<Character, Integer> charOcc =
HashBiMap<Character, Integer>.create();
}
Eclipse-gibt die folgenden Fehler:
Mehrere Marker in dieser Zeile
- HashBiMap kann nicht aufgelöst werden
- Character.Integer kann nicht aufgelöst werden
- Syntaxfehler auf Token " ""." erwartet
- Syntaxfehler auf Token "", löschen Sie dieses Token
- Die Methode create () wird für die Klasse ODP undefined
Was mache ich falsch?
Andere Google Sachen, wie Schreiner, funktioniert gut. (Aber Joiner ist nicht generisch.)
Lösung
Wenn statische generische Funktionen aufrufen, müssen Sie nicht den Typ-Parameter übergeben:
HashBiMap<Character, Integer> charOcc = HashBiMap.create();
Auch wirklich Sie sollten nicht Code an die Implementierungsklasse, so bist du besser dran tun
Map<Character, Integer> charOcc = HashBiMap.create();
oder
BiMap<Character, Integer> charOcc = HashBiMap.create();
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow