Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当数组的每个元素都是java中json中的对象时,如何保留每个元素的值?_Java_Json - Fatal编程技术网

当数组的每个元素都是java中json中的对象时,如何保留每个元素的值?

当数组的每个元素都是java中json中的对象时,如何保留每个元素的值?,java,json,Java,Json,我需要准备一个json文件,格式如下: [{x:0,y:a},{x:1,y:b},{x:2,y:c}] 我使用JSONObject和JSONArray实现了以下技术: JSONArray ac=new JSONArray(); JSONObject acontent=new JSONObject(); acontent.put("x", "0"); acontent.put("y",a); acontent.put("x", "1"); acontent.put("y",b); acont

我需要准备一个json文件,格式如下: [{x:0,y:a},{x:1,y:b},{x:2,y:c}]

我使用JSONObject和JSONArray实现了以下技术:

JSONArray ac=new JSONArray();
JSONObject acontent=new JSONObject();  

acontent.put("x", "0");
acontent.put("y",a);
acontent.put("x", "1");
acontent.put("y",b);
acontent.put("x", "2");
acontent.put("y",c);

ac.add(acontent);

然而,我只能得到这个输出,[{x:2,y:c}]。如何保留x和y之前的所有值?

有比这更优雅的解决方案,但总体思路是原始数组中的每个元素都需要一个对象

JSONArray ac=new JSONArray();
JSONObject acontent=new JSONObject();  

acontent.put("x", "0");
acontent.put("y",a);
ac.add(acontent);
acontent = new JSONObject();

acontent.put("x", "1");
acontent.put("y",b);
ac.add(acontent);

acontent = new JSONObject();
acontent.put("x", "2");
acontent.put("y",c);

ac.add(acontent);

有比这更优雅的解决方案,但总体思路是,原始数组中的每个元素都需要一个对象

JSONArray ac=new JSONArray();
JSONObject acontent=new JSONObject();  

acontent.put("x", "0");
acontent.put("y",a);
ac.add(acontent);
acontent = new JSONObject();

acontent.put("x", "1");
acontent.put("y",b);
ac.add(acontent);

acontent = new JSONObject();
acontent.put("x", "2");
acontent.put("y",c);

ac.add(acontent);

谢谢你@Claude,这个解决方案有效b,但请建议我更好的方法。谢谢@Claude,这个解决方案有效b,但请建议我更好的方法。