Java 将列表作为方法中的参数发送

Java 将列表作为方法中的参数发送,java,list,arraylist,Java,List,Arraylist,我有以下清单: List<Item> items = getItems (id); 因此,我无法打印项目id列表并将其作为参数传递。我该怎么做呢?我想这可能会对你有所帮助 List<Item> items = getItems (id); List<Integer> itemIds = getItemIds(items); List<ItemTotals> itemTotals = this.ItemTotalDAO.findVHFItemTot

我有以下清单:

List<Item> items = getItems (id);

因此,我无法打印项目id列表并将其作为参数传递。我该怎么做呢?

我想这可能会对你有所帮助

List<Item> items = getItems (id);
List<Integer> itemIds = getItemIds(items);
List<ItemTotals> itemTotals = this.ItemTotalDAO.findVHFItemTotalsByItemIds(itemIds, budgetYear);
List items=getItems(id);
List itemIds=getItemIds(items);
List itemTotals=this.itemtottaldao.findvhfitemtottalsbyitemids(itemIds,budgetYear);
getItemId(items)定义在这里

List<Integer> getItemIds(List<Item> items) {
    List<Integer> itemIds = new ArrayList<>();
    for(Item item : items) {
       itemIds.add(item.getItemID());
    }
 return itemIds;
}
List getItemId(列表项){
List itemIds=new ArrayList();
用于(项目:项目){
add(item.getItemID());
}
返回itemIds;
}

我使用了另一个列表,如下所示:

List<ItemTotals> itemTotals = this.ItemTotalDAO.findVHFItemTotalsByItemIds(List, budgetYear);
List<Long> itemIdList = new ArrayList<Long>();
for (Item vith : items) {
    itemIdList.add(vith.getItemId());
    System.out.println("itemid list is " + itemIdList);
}
List itemIdList=new ArrayList();
用于(第vith项:项目){
add(vith.getItemId());
System.out.println(“itemid列表为”+itemIdList);
}

在getItems()方法中,仅返回包含itemid的列表实际上是List items=getItems(id),它返回itemid、name和id等3列,应该是“List itemTotals=this.ItemTotalDAO.FinDvHfItemTotalSbyItemId(items,budgetYear);@JohnBollinger自从您删除了现有的泛型类型后,我回滚了您的破坏性编辑。请下次更加小心,例如检查“并排标记”。在:this.itemtottaldao.findvhfitemtottalsbyitemids(List,budgetYear);什么是List?尝试传递您想要的,而不是传递“List”,这意味着替换“List”“使用Item.getItemId()或Item.SomeMethodInItemdToThatReturnSiteMid()。非常感谢,这确实解决了我的问题。我做了一些更改,现在它可以工作了。”