如何获取仅包含Java中特定字段的对象列表?

我有一个来自Person类型的对象的列表:


String id

String name

String address

String workPlace

我想创建一个新的列表,其中包含Person对象,但仅包含2个字段:id和name。我想稍后从该列表中创建一个json,如下所示:


[

{

"id": "767384",

"name": "Bob",

},

{

"id": "202330",

"name": "Alice",

}

]

我该怎么做?谢谢!


慕运维8079593
浏览 142回答 2
2回答

Cats萌萌

该库是com.google.gson.JsonArray和org.json.JSONObject首先要做的是创建一个JSON数组。JsonArray jsonPersonList = new JsonArray();然后创建一个循环(假设有一个名为personList的列表)。for(Person person : personList)然后在循环内创建一个新的json对象。JsonObject personJson = new JsonObject();将person属性放在json对象中。personJson.addProperty("id" , person.getId()); //Assuming getters,setterspersonJson.addProperty("name" , person.getName());在循环的最后,将personJson添加到JsonPersonList。jsonPersonList.add(personJson);循环之后,您将拥有一个与所需人员一起的json列表。示例方法:public JsonArray getPersonJsonList(ArrayList<Person> personList){&nbsp; &nbsp;JsonArray jsonPersonList = new JsonArray();&nbsp; &nbsp;for(Person person : personList){&nbsp; &nbsp; &nbsp; JsonObject personJson = new JsonObject();&nbsp; &nbsp; &nbsp; personJson.addProperty("id" , person.getId());&nbsp; &nbsp; &nbsp; personJson.addProperty("name" , person.getName());&nbsp; &nbsp; &nbsp; jsonPersonList.add(personJson);&nbsp; &nbsp;}return jsonPersonList;}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java