Wie können Sie eine Bimap
von Google-Sammlungen instanziieren?BiMap von Google-Sammlungen in Java instanziieren
Ich habe die Frage gelesen Java: Instantiate Google Collection's HashBiMap
Eine Probe von meinem Code
import com.google.common.collect.BiMap;
public class UserSettings {
private Map<String, Integer> wordToWordID;
UserSettings() {
this.wordToWordID = new BiMap<String. Integer>();
I cannot instantiate the type BiMap<String, Integer>
bekommen.
Hmm. Ihre Antwort wirft eine neue Frage auf. ** Warum hat EnumBimap nicht die Methode 'create' ohne Parameter, wie HashBiMap? ** –
@Masi: Das ist eine gute Frage. Ich glaube, der Grund dafür ist, dass EnumBimap wissen muss, was seine Parameter sind, und wegen der Typauslöschung kann es nicht wissen, es sei denn, Sie übergeben die "Class" -Objekte zu einem bestimmten Zeitpunkt. Dasselbe gilt für "EnumMap" und "EnumSet" in der Standardbibliothek. –
Es ist also nicht genug, dass 'EnumMap' nur die Typen kennt. Es macht anscheinend eine gewisse Verarbeitung basierend auf dem Inhalt der Eingabedaten. –