Java 1.5是否与.Net中的Predicate <T>方法等效?

Tet*_*Oni 8 .net java collections predicate

具体来说,我正在寻找类似干净的符号Collection<T>.TrueForAll/ Exists等.

编写一个foreach循环来检查每个对象上方法的返回感觉很臭,所以我希望有一个更好的Java习语.

Apo*_*isp 6

Functional Java提供了一流的功能.谓词表示为F<T, Boolean>.例如,这是一个程序,用于测试数组是否存在全部为小写字母的字符串.

import fj.F;  
import fj.data.Array;  
import static fj.data.Array.array;
import static fj.function.Strings.matches;

public final class List_exists {  
  public static void main(final String[] args) { 
    final Array<String> a = array("Hello", "There", "how", "ARE", "yOU?");  
    final boolean b = a.exists(matches.f("^[a-z]*$"));  
    System.out.println(b); // true
  }  
}
Run Code Online (Sandbox Code Playgroud)