Jak utworzyć instancję kolekcji danych Google Bimap
?Aby utworzyć instancję BiMap Of Google-collections w języku Java
Czytałem Pytanie Java: Instantiate Google Collection's HashBiMap
Próbkę mojego kodu
import com.google.common.collect.BiMap;
public class UserSettings {
private Map<String, Integer> wordToWordID;
UserSettings() {
this.wordToWordID = new BiMap<String. Integer>();
dostaję cannot instantiate the type BiMap<String, Integer>
.
Hmm. Twoja odpowiedź rodzi nowe pytanie. ** Dlaczego EnumBimap nie ma metody "create" bez parametrów, takich jak HashBiMap? ** –
@Masi: To dobre pytanie. Sądzę, że powodem jest to, że EnumBimap musi wiedzieć, jakie są jego parametry, a ze względu na typ wymazania nie może tego wiedzieć, chyba że w pewnym momencie przekażesz do niego obiekty "Class". To samo dotyczy "EnumMap" i "EnumSet" w standardowej bibliotece. –
Zatem nie wystarczy, aby 'EnumMap' znał tylko typy. To najwyraźniej sprawia, że niektóre przetwarzanie w oparciu o zawartość danych wejściowych. –