public class FuctionTest {
public static void main(String[] args) {
//函数式接口传T返R
/*public interface Function<T, R> {
R apply(T t);
}*/
Function function=new Function<String,Integer>() {
@Override
public Integer apply(String str) {
return Integer.valueOf(str);
}
};
Function function2=str ->str;
Function function3=(str) ->{return str;};
Function<String, List> function4=(str) ->{List a=new ArrayList();a.add(str); return a;};
System.out.println(function.apply("123"));
System.out.println(function2.apply(456));
System.out.println(function3.apply("789"));
System.out.println(function4.apply("789"));//需加泛型
//断定型接口传T返boolean类型
/* public interface Predicate<T> {
boolean test(T t);
}*/
Predicate predicate=new Predicate<String>() {
@Override
public boolean test(String str) {
return str.isEmpty();
}
};
Predicate<String> predicate1=(str)-> str.isEmpty();
System.out.println(predicate1.test("789"));
System.out.println(predicate1.test(""));
//消费型接口,传T不返
/* public interface Consumer<T> {
void accept(T t)
};*/
Consumer consumer=new Consumer<String>() {
@Override
public void accept(String str) {
System.out.println(str);
}
};
Consumer consumer1=(str)->{System.out.println(str); };
consumer1.accept("123");
//供给型接口,不传返T
/* public interface Supplier<T> {
T get();
}*/
Supplier supplier=new Supplier() {
@Override
public Object get() {
return 123;
}
};
Supplier supplier1=()->{return "456";};
System.out.println(supplier.get());
System.out.println(supplier1.get());
}
}
函数式接口(基础)
最新推荐文章于 2024-09-13 23:06:17 发布

1625

被折叠的 条评论
为什么被折叠?



