在我的应用程序中,我使用第三方库(确切地说是MongoDB的Spring Data).
这个库的方法返回Iterable<T>,而我的其余代码需要Collection<T>.
有什么实用方法可以让我快速将一个转换为另一个吗?我想避免foreach在我的代码中为这么简单的事情创建一堆循环.
考虑到Iterator<Element>,我们怎么可以转换Iterator到ArrayList<Element>(或List<Element>)的最好,最快的可能方式,这样我们就可以使用ArrayList它,例如的操作get(index),add(element)等等.
我正在尝试使用一个服务,它为我提供了一个具有字段的实体,它是一个数组.
{
  "id": "23233",
  "items": [
    {
      "name": "item 1"
    },
    {
      "name": "item 2"
    }
  ]
}
但是当数组包含单个项时,将返回项本身,而不是一个元素的数组.
{
  "id": "43567",
  "items": {
      "name": "item only"
    }
}
在这种情况下,杰克逊无法转换为我的Java对象.
public class ResponseItem {
   private String id;
   private List<Item> items;
   //Getters and setters...
}
有一个简单的解决方案吗?
我是GSON的新手.我需要将以下JSON响应转换为List.
JSON响应:
{
    "data": [{
        "data": {
            "ac_id": "000",
            "user_id": "000",
            "title": "AAA"
        }
    }, {
        "data": {
            "ac_id": "000",
            "user_id": "000",
            "title": "AAA"
        }
    }]
}
我有一个类来投射数据
帐户.java的
public class Account {
     public int ac_id;
     public int user_id;
     public String title;
    @Override
    public String toString(){
         return "Account{"+
         "ac_id="+ac_id+
         ", user_id="+user_id+
         ", title="+title+'}';
    }
}
当我在课堂上发表回复时,我得到:
[Account{ac_id="000", user_id="000", title="AAA"}, Account{ac_id="000", user_id="000", title="AAA"}]
现在我需要将这两个值放入一个List<Account>.
你有什么建议?