我的列表中有一个字符串类型的 jsonobject,该列表包含两个 json 对象,但大小为 4。
JSONObject
存储在列表中 -
[{"size":"S", "id":11}, {"size":"8", "id":19}]
List<String> myList = new ArrayList<>(Arrays.asList(cart.split(",")));
给出了上面的输出,但是myList.size()
给出了4。
最佳答案
首先,您必须映射到对象,然后您将能够获得正确的对象计数,例如:
package com.ds;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.lang.reflect.Type;
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
String cart = "[{\"size\":\"S\", \"id\":11}, {\"size\":\"8\", \"id\":19}]";
Type type = new TypeToken<ArrayList<CObject>>() {
}.getType();
ArrayList<CObject> cObjectList = (new Gson()).fromJson(cart, type);
System.out.println(cObjectList);
System.out.println(cObjectList.size());
}
public class CObject {
private String id;
private String size;
public String getSize() {
return size;
}
public void setSize(String size) {
this.size = size;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@Override
public String toString() {
return "CObject{" +
"id='" + id + '\'' +
", size='" + size + '\'' +
'}';
}
}
}
上述代码的输出是:
[CObject{id='11', size='S'}, CObject{id='19', size='8'}]
2
希望这对您有所帮助。
关于java - 如何获取包含 JSONObject 的列表的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54455105/