0

我有一个String从另一个LinkedHashMapusingtoString方法构造的,我想在创建另一个LinkedHashMap<String, String>使用String前一个LinkedHashMap.

是否可以使用String拆分并在循环调用中手动执行LinkedHashMap.put()

我认为这可行吗?

LinkedHashMap 参数 = new LinkedHashMap();

String[] split = paramsString2.split(",");

for (int i = 0; i < split.length; i++) {
    String[] nameValue = split[i].split("=");
    params.put(nameValue[0], nameValue[1]);

}

return params;
4

2 回答 2

1

假设字符串的形式为

key1=value1;key2=value2;key3=value3

是的,有可能。用于string.split(";")将映射条目分隔到一个数组中。

Then loop through the array, and for each entry, use string.split("=") to separate the key from the value.

Then add the key and value to the new LinkedHashMap:

String[] parts = entry.split("=");
map.put(parts[0], parts[1]);   //parts[0] is the key, parts[1] is the value
于 2013-10-28T10:30:30.907 回答
0

当然有可能,但你为什么要做这么可怕的事情呢?

无论如何,是的,有可能,你也可以使用 guava 库来完成这样的工作。 番石榴库

于 2013-10-28T10:29:05.540 回答