Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public <T> Fn2<T,Fn1<T,T>,T> applyTwice(){
- return (a,b) -> b.apply(b.apply(a));
- }
- this.<Integer>applyTwice().apply(10,(Integer a)->a+3);
- //16
- //using methods results in better type inference..
- public static <T> T twice(T a,Fn1<T,T> fn){
- return fn.apply(fn.apply(a));
- }
- twice(10,a->a+3);
- //16
- twice("HEY",a->a+ " HAHA"));
- //HEY HAHA HAHA
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement