我有一个值列表,这是
List<Test> myList;
public class Test {
String type;
String value;
}
当我调试List Value看起来像
时Test(type=6140, value=2017)
Test(type=6144, value=2017)
我想将其转换为字符串
所以我试着用
List<Test> myList;
StringBuilder abc = new StringBuilder();
for(Object a: myList){
abc.append(String.valueOf(a));
}
但结果将像
Test(type=6140, value=2017)Test(type=6144, value=2017)
但我想将值转换为
[{"type":6140,"value":"2017"},{"type":6144,"value":"2017"}]
答案 0 :(得分:2)
您可以覆盖类'Test'中的ToString()函数,也可以使用JSON序列化对象。 JSON会给你一个比想要的其他但相似的输出。 因此,覆盖函数ToString()将更符合您的需求。
答案 1 :(得分:2)
尝试使用GSON 包含库后,这个任务可以很简单 Gson gson = new Gson(); String jsonString = gson.toJson(myList)
答案 2 :(得分:0)
如果在类Test中覆盖toString方法,则输出将按照您的预期进行。
@Override
public String toString() {
return "{" +
"type=" + type +
", value=" + value +
'}';
}
<强>输出:强>
[{&#34;类型&#34;:6140,&#34;值&#34;:&#34; 2017&#34;},{&#34;类型&#34;:6144,&#34 ;值&#34;:&#34; 2017&#34;}]