论坛首页 Java企业应用论坛

关于JSON 的put方法

浏览 5553 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-10-22  
今天劳动的时候,突然发现这个问题,做一个记录,以前还以为是传值。

JSON的put方法是一个指针引用。
例如:
JSONObject a=new JSONObject();

JSONObject b=new JSONObject();

JSONObject c=new JSONObject();
a.put("v1","v1");
b.append("a",a);
a.put("v2","v2");
c.append("a",a);


这时:
b和c 的值是一样的,都是:
{"v1":"v1","v2":"v2"}
   发表时间:2008-10-22  
多谢...一般都是用地址吧
0 请登录后投票
   发表时间:2008-11-01  
如果要复制JSON对象,最好,也是最简单的方法,是先把JSONObject 转成string,再重新构造一个JSONObject,javascript里面是这样,java里面也是这样的。
0 请登录后投票
   发表时间:2008-11-01  
JSON解析和系列化,采用官方的实现并不明智。
org.json的实现,不仅接口复杂的要命。而且效率也不理想。

正好我现在在做的一个表达式解析引擎:JSEL,正好能兼容JSON的解析。
于是顺便做了一个性能测试,结果发现,StringTree最高(不过有一个bug,如果代码里面有注释,经常出现死循环)。大概事JSEL的两倍。
而官方版本最低,大概只有是JSEL一般。等比数列了,EL居中。

关于JSEL的更多的信息可参看如下连接:
详细介绍:http://code.google.com/p/jsi/wiki/JSEL
详细介绍:http://code.google.com/p/jsi/downloads/list
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics