私は持っていHashMap<String, String>
ます。の文字列配列を作成したい場合は、次のようにhashmap.values()
作成できます
String[] strArray = new String[hashmap.size()]
しかし、私の問題は、ハッシュマップ値に「A、B、C」が含まれている場合、strArrayにAとBおよびCを追加する必要があることです。
私は持っていHashMap<String, String>
ます。の文字列配列を作成したい場合は、次のようにhashmap.values()
作成できます
String[] strArray = new String[hashmap.size()]
しかし、私の問題は、ハッシュマップ値に「A、B、C」が含まれている場合、strArrayにAとBおよびCを追加する必要があることです。
を使用しArrayList
ます。
List<String> myList = new ArrayList<String>();
サイズに関係なく、HashMap
簡単に操作できますArrayList
。
配列が必要な場合は、使用できます
String[] arr = myList.toArray(new String[myList.size()]);
あなたが終わったら。
配列が必要なときはいつでも、値のコピーを取ることができます。
Map<Double, String> map = ...
String[] values = map.values().toArray(new String[map.size()]);
マップを変更すると (サイズが変わらなくても)、配列は変更されず、別のコピーを作成する必要があります。値は一意である必要がありますか?
したがって、値 (A、B、C、P、Q、R...、Z) を持つ文字列配列を作成する必要があります。
その場合、次のことを行いたいようです。
Map<Double, String> map = ...
List<String> valueList = new ArrayList<>();
for(String value: map.values())
valueList.addAll(Arrays.asList(value.split(",")));
String[] values = valueList.toArray(new String[valueList.size()]);
配列である必要がありますか?Maps を使用すると、値セットのキーを取得できます。