物件轉字串時重複物件變為引用位址

2021-08-14 18:29:55 字數 1109 閱讀 9727

起因: redis的資料集 只支援字元型別的資料,所以object轉為字串時 出現引用的問題

mapuser_info = new hashmap();

user_info.put("user_info", "1");

list> list1 = new arraylist>();

for (int i = 0; i <2; i++)

system.out.println(jsonobject.tojsonstring(list1));

輸出內容為: },]}]

第一種(這種比較蠢的辦法):

mapuser_info = new hashmap();

user_info.put("user_info", "1");

mapuser_info2 = new hashmap();

user_info2.put("user_info", "1");

list> list1 = new arraylist>();

mapma1p = new hashmap();

list> list = arrays.aslist(user_info);

ma1p.put("et", list);

list1.add(ma1p);

ma1p = new hashmap();

list = arrays.aslist(user_info2);

ma1p.put("et", list);

list1.add(ma1p);

system.out.println(jsonobject.tojsonstring(list1));

輸出內容為 },]}]

第二種(好一點):

mapuser_info = new hashmap();

user_info.put("user_info", "1");

list> list1 = new arraylist>();

for (int i = 0; i <2; i++)

輸出:},]}]

這裡解決辦法是new出新的物件,轉字串時就不會是引用了。

js json字串轉物件

1.json.parse 在網上找json字串轉物件的方法 主要是 json.parse str 但我發現這個方法有很大的侷限性 var jsonstr var jsonstr1 console.log json.parse jsonstr 結果 console.log json.parse jso...

json 字串轉物件

json 字串為 var str 1,eval方式解析,恐怕這是最早的解析方式了。如下 function strtojson str 2,new function形式,比較怪異哦。如下 function strtojson str 3,使用全域性的json物件,如下 function strtojs...

Date物件轉字串

1.tostring 把 date 物件轉換為字串。2.totimestring 把 date 物件的時間部分轉換為字串。3.todatestring 把 date 物件的日期部分轉換為字串。4.togmtstring 請使用 toutcstring 方法代替。5.toutcstring 根據世界時...