我有一个arraylist,arraylist拥有一堆Domain对象.如下所示:
Domain [domainId=19,name=a,dnsName=a.com,type=0,flags=0]
Domain [domainId=20,name=b,dnsName=b.com,flags=12]
Domain [domainId=21,name=c,dnsName=c.com,flags=0]
Domain [domainId=22,name=d,dnsName=d.com,flags=0]

我的问题是如何将ArrayList转换为JSON?数据格式应为:

{  
"param":{  
  "domain":[  
    {  
      "domid":19,"name":"a","dnsname":"a.com","type":0,"flags":
    },...
  ]
}

解决方法

不确定它是否正是您所需要的,但您可以使用GSON库( Link)进行ArrayList到JSON的转换.
ArrayList<String> list = new ArrayList<String>();
list.add("str1");
list.add("str2");
list.add("str3");
String json = new Gson().toJson(list);

或者在你的情况下:

ArrayList<Domain> list = new ArrayList<Domain>();
list.add(new Domain());
list.add(new Domain());
list.add(new Domain());
String json = new Gson().toJson(list);

如果由于某种原因您发现它更方便,您还可以遍历ArrayList并从列表中的各个Domain对象构建JSON

String toJSON(ArrayList<Domain> list) {
    Gson gson = new Gson();
    StringBuilder sb = new StringBuilder();
    for(Domain d : list) {
        sb.append(gson.toJson(d));
    }
    return sb.toString();
}

如何在Java中将Arraylist转换为Json的更多相关文章

  1. ios – Swift:不符合协议NSCoding

    我正在尝试在swift中使用NSCoding协议,但是似乎无法弄清楚为什么编译器会抱怨当我实现所需的方法时它“不符合协议NSCoding”:这是一个bug还是我只是想念一些东西?解决方法在报告导航器中的详细编译器消息中可以看到,您的方法未正确声明:此外,initWithCoder方法必须标记为必需:在Swift3中,所需的方法是

  2. Swift 字符串替换/过滤/切割/拼接

    替换为/结果过滤过滤掉单个字符/结果过滤掉开头和结尾的空白结果切割对字符串使用/作为分隔符来切割,不允许空字符串使用split函数结果是一个数组对字符串使用/作为分隔符来切割,允许空字符串结果拼接结果

  3. Swift开发教程--字符串的操作

    替换把?替换为/结果

  4. 探索:测试 Swift 中的 ErrorType

    最后我们以一个说明样例、以及一些有用的资源结尾如何实现ErrorType协议如果跳转到Swift标准库中ErrorType定义的位置,我们就会发现它并没有包含明显的要求。我们最初的想法可能是,也许ErrorType是一种特殊类型,编译器以特殊的方式来对它进行支持,而且只能用Swift原生的枚举来实现。更新:从Xcode7beta5版本开始,我们可能不需要花费其他精力就可以为结构体和类实现ErrorType协议。允许结构体和类实现ErrorType协议。通过LLDB进一步调查发现这个协议有一些隐藏的要求。

  5. swift 网络搜索热词排行

    1.使用www.showapi.com上的接口,需要注册添加一个App,这样才能获取appid和secret密钥,调用前需要订购套餐(选免费的就可以了);2.外部库Podfile文件内容,SnapKit这里暂时不需要用到:3.桥接头文件参考:http://www.jb51.cc/article/p-pcleyxep-te.html4.AppTransportSecurityhasblockedac

  6. 如何在Swift中打乱数组?

    如何随机化或混洗Swift中的数组中的元素?例如,如果我的数组包括52张扑克牌,我想洗牌,以便洗牌。这个答案详细说明了如何在Swift的各种版本中添加Fisher-Yatesshuffle。Swift3版本是最宽松的,但是它们至少可以用于数组。每个Swift版本的命名和行为与该版本的mutating和nonmutating排序方法相匹配。

  7. swift – 无法在Simulator中运行应用程序:运行时遇到错误(Domain = LaunchServicesError,Code = 0)

    我在配置文件出现问题后无法在模拟器中运行我的应用程序。我在xcode6–beta4中做快速编码。这是很好的在证书的配置文件的麻烦。我已经尝试清洗构建。检查命令行到xCode6-beta4运行。检查构建部署,设置为7.0,所以swift将不会抱怨兼容性修复配置中的错误。请建议其他方法来修复此错误。谢谢如果您的扩展程序的捆绑ID不带应用的捆绑ID,则会发生这种情况。

  8. 在Swift中创建一个新的NSError(拒绝PromiseKit中的Promise)

    我一直在试图使用PromiseKit,而我坚持拒绝承诺。承诺拒绝通过调用具有NSError作为参数的拒绝功能来完成。简单地得到一个NSError的实例会帮助我。您在此代码中有两个问题:>NSError的所有初始化参数都有externalname。>空字典文字是[:],而不是[]。[]是为Array尝试:或者,如果您没有任何userInfo,您可能希望通过为零。

  9. unit-testing – 如何在Swift中对NSFetchedResultsController进行单元测试

    我有一个Swift应用程序,它使用NSFetchedResultsController从持久存储中获取List对象:它的工作方式与预期的一样,我将List对象描述打印到控制台.我想为我的应用程序编写一些单元测试,所以我创建了扩展XCTestCase的类.代码编译没有问题,测试运行,但不幸的是我无法在该上下文中获取List对象.我在控制台中获得的所有内容都是List对象的数量和致命错误:线路上升:我

  10. swift – 检查自定义对象数组是否包含特定的自定义对象

    说我有一个非常简单的Person类我希望将一个这样的人的集合存储在一个属性中,该属性是一个Person类的数组,类型为Person也许我实现如下问题:我如何检查people.list是否包含实例alex,好吗?

随机推荐

  1. 基于EJB技术的商务预订系统的开发

    用EJB结构开发的应用程序是可伸缩的、事务型的、多用户安全的。总的来说,EJB是一个组件事务监控的标准服务器端的组件模型。基于EJB技术的系统结构模型EJB结构是一个服务端组件结构,是一个层次性结构,其结构模型如图1所示。图2:商务预订系统的构架EntityBean是为了现实世界的对象建造的模型,这些对象通常是数据库的一些持久记录。

  2. Java利用POI实现导入导出Excel表格

    这篇文章主要为大家详细介绍了Java利用POI实现导入导出Excel表格,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  3. Mybatis分页插件PageHelper手写实现示例

    这篇文章主要为大家介绍了Mybatis分页插件PageHelper手写实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  4. (jsp/html)网页上嵌入播放器(常用播放器代码整理)

    网页上嵌入播放器,只要在HTML上添加以上代码就OK了,下面整理了一些常用的播放器代码,总有一款适合你,感兴趣的朋友可以参考下哈,希望对你有所帮助

  5. Java 阻塞队列BlockingQueue详解

    本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景,通过实例代码介绍了Java 阻塞队列BlockingQueue的相关知识,需要的朋友可以参考下

  6. Java异常Exception详细讲解

    异常就是不正常,比如当我们身体出现了异常我们会根据身体情况选择喝开水、吃药、看病、等 异常处理方法。 java异常处理机制是我们java语言使用异常处理机制为程序提供了错误处理的能力,程序出现的错误,程序可以安全的退出,以保证程序正常的运行等

  7. Java Bean 作用域及它的几种类型介绍

    这篇文章主要介绍了Java Bean作用域及它的几种类型介绍,Spring框架作为一个管理Bean的IoC容器,那么Bean自然是Spring中的重要资源了,那Bean的作用域又是什么,接下来我们一起进入文章详细学习吧

  8. 面试突击之跨域问题的解决方案详解

    跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。那怎么解决这个问题呢?接下来我们一起来看

  9. Mybatis-Plus接口BaseMapper与Services使用详解

    这篇文章主要为大家介绍了Mybatis-Plus接口BaseMapper与Services使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  10. mybatis-plus雪花算法增强idworker的实现

    今天聊聊在mybatis-plus中引入分布式ID生成框架idworker,进一步增强实现生成分布式唯一ID,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

返回
顶部