替换Lambda表达式-Lambda表达式->应该替换,因为我的Java不支持

时间:2018-10-24 08:29:57

标签: java

retrofit

我要替换lambda表达式(for(String s : file1List){ System.out.println("*****************************"); System.out.println("Checking for: "+s); System.out.println("*****************************"); file2List.removeIf(s1->s1.contains(s)); System.out.println("*************END****************"); )。

1 个答案:

答案 0 :(得分:0)

升级Java到> = 8

我建议升级到Java-8,以便您可以使用lambda和removeIf,但是有可能您不能这样做。在这种情况下,请参阅下一部分

使用Java <8

在Java-8之前,在遍历列表时从列表中删除元素有些困难。参见removing-elements-on-a-list-while-iterating-through-it

您还需要替换removeIf语句,以便替换

file2List.removeIf(s1->s1.contains(s)); 

类似:

for(String s1 : new new ArrayList<>(file2List)) {
    if (s1.contains(s)) {
        file2List.remove(s1);
    }
}