1. 程式人生 > 其它 >方法引用 類呼叫非靜態方法的示例

方法引用 類呼叫非靜態方法的示例

package function;

import com.atguigu.cachestudy.bean.Emplyer;
import org.junit.jupiter.api.Test;

import java.util.Comparator;
import java.util.function.BiPredicate;
import java.util.function.Function;

public class Function003 {
@Test
public void test001(){
Comparator<String> comparator = (s1,s2)->s1.compareTo( s2 );
System.out.println( comparator.compare( "ab", "abd" ) );
System.out.println("*****************");
Comparator<String> comparator2 =String::compareTo;
System.out.println(comparator2.compare( "ab","abc" ));
}
@Test
public void test002(){
BiPredicate<String,String> biPredicate1=(s1,s2)->s1.equals( s2 );
System.out.println(biPredicate1.test("abc","abc"));
System.out.println("************************");
BiPredicate<String,String> biPredicate2=String::equals;
System.out.println(biPredicate2.test( "abc","abd" ));
}

@Test
public void test003(){
Emplyer em= new Emplyer( 2,"zhangsan",11000.5,30 );
Function<Emplyer,String> fuc =e->e.getName();
System.out.println(fuc.apply( em ));
System.out.println("***********************************");
Function<Emplyer,String> fuc2 =Emplyer::getName;
System.out.println(fuc2.apply( em ));
}


}