@FunctionalInterface
public interface FunctionInterface {
void get();
}
public class FunctionTest {
public static void main(String[] args) {
FunctionInterface functionInterface = new FunctionInterface() {
@Override
public void get() {
System.out.println("get方法");
}
};
functionInterface.get();
}
}
@FunctionalInterface
public interface FunctionInterface {
void get();
}
public class FunctionTest {
public static void main(String[] args) {
FunctionInterface ft = () -> {
System.out.println("JDK8 Lambda表达式调用:get方法");
};
ft.get();
}
}
() : 表示抽象方法所需的参数列表,(参数1,参数2) -> : 固定格式 {} :表示抽象方法的方法体
@FunctionalInterface
public interface FunctionInterface2 {
String get();
}
public class FunctionTest {
public static void main(String[] args) {
FunctionInterface2 functionInterface2 = () -> {
return "有返回值的Lambda表达式调用方法";
};
System.out.println(functionInterface2.get());
/**
* 优化:有返回值的Lambda表达式调用方法
*/
FunctionInterface2 functionInterface3 = () -> "优化:有返回值的Lambda表达式调用方法";
System.out.println(functionInterface3.get());
}
}
@FunctionalInterface
public interface FunctionInterface3 {
String get(String s);
}
public class FunctionTest {
public static void main(String[] args) {
FunctionInterface3 ft3 = (String s)-> s;
System.out.println(ft3.get("有参数,有返回值的Lambda表达式调用方法"));
}
}