繁体   English   中英

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

[英]Replacing Lambda expression - Lambda expression -> should be replaced as my Java does not support

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****************"); 

我想替换lambda表达式( s1->s1.contains(s) )。

将Java升级到> = 8

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

用Java <8解决

在Java-8之前,在遍历列表时从列表中删除元素有些困难。 请参阅通过迭代删除列表中的元素

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

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

与类似:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM