Dan*_*fer 40 java json org.json
有没有办法克隆一个实例org.json.JSONObject
而不对其进行字符串化并重新分析结果?
浅拷贝是可以接受的.
Jay*_*juh 68
最简单(并且速度极慢且效率低)的方法
JSONObject clone = new JSONObject(original.toString());
Run Code Online (Sandbox Code Playgroud)
Bil*_*ard 56
使用public JSONObject(JSONObject jo, java.lang.String[] names)
构造函数和public static java.lang.String[] getNames(JSONObject jo)
方法.
JSONObject copy = new JSONObject(original, JSONObject.getNames(original));
Run Code Online (Sandbox Code Playgroud)
我发现的最快+最小的方法是这样的。它进行深复制。
JSONObject克隆=新的JSONObject(original.toMap());
我知道提问者说
浅拷贝是可以接受的。但我认为不排除该解决方案是否会进行深复制。
更新:toMap() 函数在 Android 中不可用。但在 groupId org.json 下的 maven 上可用的 org.json 库有它:https ://search.maven.org/artifact/org.json/json/20210307/bundle
归档时间: |
|
查看次数: |
36020 次 |
最近记录: |