如何迭代JSON字符串

时间:2018-06-10 00:40:38

标签: java json string

我收到了一个Json字符串:

{"items":[{"score":0.0,"year":0,"id":258}, "score":0.0,"year":0,"id":259}],"id":0}

我想将ids存储在列表中,因此结果应为: [258259]。

最好的效率是什么?有什么建议吗?

2 个答案:

答案 0 :(得分:1)

使用Gson

List<Integer> ids = new ArrayList<>();

JsonArray items = new JsonParser()
   .parse(myString)
   .getAsJsonObject()
       .getAsJsonArray("items");

for (JsonElement item : items) {
    ids.add(item
        .getAsJsonObject()
        .getAsJsonPrimitive("id")
        .getAsInt());
}

答案 1 :(得分:0)

var obj = {
      items: [
        {
              score:0.0,
              year:0,
              id:258
            },
        {
            score:0.0,
            year:0,
            id:259
       }],
       id:0};

var items = obj.items;

items = items.map( function(el) { return el.id;});

console.log( JSON.stringify(items));