如何为列表<类名>创建 JSONArray

新手上路,请多包涵

我有一堂课叫

class Student {
   String name;
   String age;
}

我有一个返回 List 对象的方法

public List<Student> getList(){

 List<Student> li =new ArrayList();
 ....

 li.add(new Student('aaa','12'));
 ...

 return li;
}

我需要像这样将该列表转换为 JSONArray

 [{"name":"sam","age":"12"},{"name":"sri","age":"5"}]

任何人都可以帮我得到这个吗?

原文由 Navamani Samuel 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 652
2 个回答

我认为您不需要下载 jettison jar 文件。

使用 JSONArrayJSONObject 您可以轻松将该列表转换为 JSON 对象,如@Juniad answer

原文由 Mohan Kumar 发布,翻译遵循 CC BY-SA 3.0 许可协议

使用 Gson 库会非常简单。

从 JSON 字符串到对象的 ArrayList 为:

 Type listType =
     new TypeToken<ArrayList<Student>>(){}.getType();
ArrayList<Student> yourClassList = new Gson().fromJson(jsonArray, listType);

并将对象数组列表中的 Json 作为:

 ArrayList<Student> sampleList = new ArrayList<Student>();
String json = new Gson().toJson(sampleList);

Gson 库比 JSONObjectJSONArray 实现更易于使用。

原文由 Mandar Pandit 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题