1、對象轉字符串(這個容易)。
java對象可以看做json的另一種形式。
一把來說只需要,調用對象的toString()方法即可。
2、字符串轉對象
java對象可以看做json的另一種形式。但反過來也就不一定了。
例如
[{"name":"name","data":[[12345,qwr][1256,dsfsd]},{"name":"obj","data":[[xvc,qxcccwr][xxxx,xxxxx]}]。
這個其實就是一個對象的toString(),控制台打印出來就是上面那樣。
可以是這個List<obj> 。 這個obj包含兩個屬性,一個name為String類型,一個data是List<List<String>>類型。
反過來呢?叫你把上面這個字符串轉成對象呢?那就有點復雜了。
到底該怎么轉換呢?
這里提供一種思路。
1、去掉收尾 [ ]
得到{"name":"name","data":[[12345,qwr][1256,dsfsd]},{"name":"obj","data":[[xvc,qxcccwr][xxxx,xxxxx]}
2、然后去掉花括號
得到兩個字符串
"name":"name","data":[[12345,qwr][1256,dsfsd]
"name":"obj","data":[[xvc,qxcccwr][xxxx,xxxxx]
3、再以逗號切割為數組,
得到 ["name":"name","data":[[12345,qwr][1256,dsfsd]]
4、取出數組,分別處理,第一個為json字符串,利用fastjson轉為對象即可。第二個以字符串"冒號":",進行分割。
得到
name
name
data
[[12345,qwr][1256,dsfsd]]
5、將 [[12345,qwr][1256,dsfsd]],去掉收尾 [ ]
得到[12345,qwr][1256,dsfsd]
6、再以逗號",",split函數切割,得到數組
[[12345,qwr][1256,dsfsd]]
7、遍歷其中,再以逗號分割
得到
12345,qwr
1256,dsfsd]
8,再裝進集合。
至此所以最里面都已解析完畢,都能拿到值,也就可以轉為對象了。