@Test
public void function(){
List<String> list = Lists.newArrayList("1","2","3");
List<Integer> integers = Lists.transform(list,new Function<String, Integer>() {
@Override
public Integer apply(String arg0) {
return Integer.valueOf(arg0);
}
});
System.out.println(integers);
}
guava 中的函數式編程,比較好用吧
@Test
public void predicate(){
List<String> list = Lists.newArrayList("1","2","3");
List<String> strings = Lists.newArrayList( Iterables.filter(list, new Predicate<String>() {
@Override
public boolean apply(String arg0) {
// TODO Auto-generated method stub
return !arg0.equals("3");
}
}));
System.out.println(strings);
}
guava 斷言編程
總結一下,根據guava官網,和 function predicate 自身特點 不難找到規律。 function 常用來 轉換 (transform) predicate 常用來 過濾(filter) (好像function predicate 天生如此) 等有時間了,把guava官網翻譯一下,不知道有沒有人需要啊