Jak przekonwertować Map<K, V>
na listy List<K> keys
, List<V> values
, tak, aby zamówienie w keys
i values
było zgodne? Mogę tylko znaleźć Set<K> Map#keySet()
i Collection<V> Map#values()
które mogę przekonwertować do list przy użyciu:Jak przekonwertować mapę <K, V> na dwie listy przy zachowaniu zamówienia?
List<String> keys = new ArrayList<String>(map.keySet());
List<String> values = new ArrayList<String>(map.values());
ale martwię się, że kolejność będzie przypadkowa.
Czy to prawda, że muszę je ręcznie przekonwertować lub czy jest gdzieś skrót?
Aktualizacja: Dzięki odpowiedziach udało mi się znaleźć dodatkowe, użyteczne informacje, które chciałbym podzielić się z wami, przypadkowy użytkownik google: How to efficiently iterate over each Entry in a Map?
myślę ArrayList zachowuje kolejność, w jakiej możemy wstawić. –
@AchintyaJha tak, to prawda. Jednak czy zbiór jest zwracany przez zamawianą mapę? –
+1 za nieprzyjęcie założenia, że dwie kolekcje (klucze i wartości) będą miały tę samą kolejność. – yshavit