如何解决如何在Java Selenium中的数组内创建多个JSON对象
我希望使用某种循环以这种格式输出,因为数据包含20多个对象。
"childTargets": [
{
"name": "true","rank": 86438458
},{
"name": "false","rank": 86647857
}
]
我不希望这种方式正确,因为代码太长了
.put(new JSONObject().put("name","INDIA")
请帮助我
解决方法
我想用所有名称和所有级别的数组以及遍历它们的循环创建一个aarry。
这里是一个例子:
String[] names; // all your Names
int[] ranks; // all your Ranks the first rank belongs to the first name.
JSONArray jsonArray = new JSONArray(); // Create an JSONArray Object.
for (int i = 0; i < names.length; i++) {
JSONObject jsonObject = new JSONObject();
jsonObject.put("name",names[i]);
jsonObject.put("rank",ranks[i]);
jsonArray.add(jsonObject);
}
如果您有两个以上的属性,请考虑对包含所有罢工或对象而不是sperad数组的对象使用一个列表。
,您可以使用Gson
之类的库将POJO干净地封送给json。
定义一个Java类,例如:
public class ChildTargets {
private List<Target> children;
// getters and setters
public static class Target {
private String name;
private String rank;
// getters and setters
}
然后使用循环使用您想要的任何Target对象实例化ChildTargets类,然后调用:
Gson gson = new Gson();
gson.toJson(childTargets);
您应该以以下形式获取json字符串:
{
"childTargets":[
{
"name":"obj1","rank":"rank1"
},{
"name":"obj2","rank":"rank2"
}
]
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。