我有一個(gè)帶有逗號(hào)分隔值的字符串"name1=John,name2=Jim,name3=Tina"(這可以增長(zhǎng)),我想在一個(gè)帶有鍵值對(duì)的 Map 中轉(zhuǎn)換為{name1=John,name2=Jim,name3=Tina}.String names = "name1=John,name2=Jim,name3=Tina";
Map<String, String> map = Pattern.compile("\\s*-\\s*")
.splitAsStream(externalResourcePath.trim())
.map(s -> s.split(","))
.collect(Collectors.toMap(p -> p[0], p -> p[1]));我得到的輸出是{name1=John=name2=Jim}我想要的輸出{name1=John,name2=Jim,name3=Tina}
1 回答

一只名叫tom的貓
TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超3個(gè)贊
您需要再次用“=”分隔以分隔鍵和值。
Map<String, String> map = Arrays.stream(names.split(",")) .map(s -> s.split("=")) .collect(Collectors.toMap(array -> array[0], array -> array[1]));
添加回答
舉報(bào)
0/150
提交
取消