This question already has answers here:
How can I calculate the difference between two ArrayLists?
                                
                                    (10个回答)
                                
                        
                4年前关闭。
            
        

我有两个arraylists,想返回两者的区别。以下是我的代码段:

@ResponseBody
@RequestMapping(value="/unpaidfees", method=RequestMethod.GET, produces="application/json")
public List<Fee> unpaid(@PathVariable("studentid") Long studentid){
    Transactions tr = transServ.instalmentalstd(studentid);
    List<Fee> allfees = feesServ.allFees();

    if(tr != null){
        List<Fee> paidfees = transServ.paidfees(tr.getTranxid());
        allfees.removeAll(paidfees);
    }

    return allfees;
}


综上所述。
我有一个包含所有费用的数组列表:

List<Fee> allfees = feesServ.allFees();


第二个包含已付费用的数组列表:

List<Fee> paidfees = transServ.paidfees(tr.getTranxid());


我只想返回一张清单,列出仅存在于所有收费中的费用,而不是已支付的所有收费中的费用。请提供有关如何实现此目标或更好的解决方法的建议。

感谢您的时间。

最佳答案

使用removeAll

List<Fee> unpaidFees = new ArrayList<>(allfees);
unpaidFees.removeAll(paidfees);

关于java - 在JAVA Spring MVC中找到两个数组列表的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34686560/

10-09 08:50