String stats=[id=1,mid=2]; 這樣一個(gè)字符串 如何取里面的值;
4 回答

慕勒3428872
TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超6個(gè)贊
String dataStr="[id=1,mid=2]";
dataStr="{"+dataStr.replaceAll("=", ":").substring(1,dataStr.length()-1)+"}";
JSONObject data=JSONObject.parseObject(dataStr);
System.out.println(data.get("id")+","+data.get("mid"));
可以借助工具類,比如阿里的fastjson,先把那個(gè)字符串格式化成json格式(截取分割吧),然后通過key就能獲取value

慕的地6264312
TA貢獻(xiàn)1817條經(jīng)驗(yàn) 獲得超6個(gè)贊
1.java的字符串應(yīng)該是這個(gè)定義的 String stats="[id=1,mid=2]";
2.你要取什么值,描述的不清晰呀

有只小跳蛙
TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超8個(gè)贊
不標(biāo)準(zhǔn)的做法就是以","去分割字符串,然后再以"="去分割,前段為key,后段為value.然后你就可以存儲成map或者其他方式。

慕田峪9158850
TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超7個(gè)贊
String[]str = new String[]{"id=1","mid=2"};
String array = Arrays.toString(str); // 獲取你這樣的字符串
String mapString = array.replace("[", "{").replace("]", "}");
Map<String, Integer> map = new Gson().fromJson(mapString, new TypeToken<Map<String, Integer>>() {
}.getType());
添加回答
舉報(bào)
0/150
提交
取消