我有一个HashMap<String, String>
. 如果我想创建 的字符串数组hashmap.values()
,我们可以将其创建为
String[] strArray = new String[hashmap.size()]
但我的问题是,如果 hashmap 值包含“A,B,C”,那么我需要将 A、B 和 C 添加到 strArray。
我有一个HashMap<String, String>
. 如果我想创建 的字符串数组hashmap.values()
,我们可以将其创建为
String[] strArray = new String[hashmap.size()]
但我的问题是,如果 hashmap 值包含“A,B,C”,那么我需要将 A、B 和 C 添加到 strArray。
使用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,您可以获得值集的键。