私はLinkedHashMap < String, String > map
。
List < String > keyList;
List < String > valueList;
map.keySet();
map.values();
Map.keySet()からkeyListを、map.values()からvalueListを設定する簡単な方法はありますか、それとも繰り返す必要がありますか?
ほとんどのコレクションは、コンストラクター引数としてCollection
を受け入れます。
List<String> keyList = new ArrayList<String>(map.keySet());
List<String> valueList = new ArrayList<String>(map.values());
確かに!
keyList.addAll(map.keySet());
または、作成時に渡すこともできます
List<String> keyList = new ArrayList<String>(map.KeySet());
http://download.Oracle.com/javase/1.4.2/docs/api/Java/util/ArrayList.html
Java 8-を使用した別のアプローチ
_List<String> valueList = map.values().stream().collect(Collectors.toList());
List<String> keyList = map.keySet().stream().collect(Collectors.toList());
_
注:
stream()
-コレクション(ここではObject
)をソースと見なしてmap
のシーケンスを返します
Collectors
-コレクターは、ストリームの要素に対する処理の結果を組み合わせるために使用されます。