@@ -0,0 +1,887 @@
+package com.nick.love.myra;%0A%0Aimport java.util.Arrays;%0Aimport java.util.List;%0Aimport java.util.function.Predicate;%0A%0Apublic class TestFunctionInterface %7B%0A%09%0A%09public static void main(String%5B%5D args) %7B%0A%09%09// %E4%BC%A0%E5%85%A5 Lambda %E8%A1%A8%E8%BE%BE%E5%BC%8F%0A%09%09TestMyraFunInterface.test(() -%3E %7B System.out.println(); %7D);%0A%09%09// %E4%BC%A0%E5%85%A5%E6%96%B9%E6%B3%95%E5%BC%95%E7%94%A8%0A%09%09TestMyraFunInterface.test(System.out :: println);%0A%09%09%0A%09%09// %E6%89%93%E5%8D%B0%E5%90%8D%E5%AD%97%E5%88%97%E8%A1%A8%E4%B8%AD%E5%8C%85%E5%90%AB  Myra %E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E5%90%8D%E5%AD%97%0A%09%09String%5B%5D names = %7B%22aa%22, %22Myra is a beautiful girl.%22, %22I love Myra Ma.%22, %22dd%22%7D;%0A%09%09PrintNameWithMyra.print(Arrays.asList(names), name -%3E name.contains(%22Myra%22));%0A%09%7D%0A%09%0A%09static class TestMyraFunInterface %7B%0A%09%09public static void test(MyraFunctionInterface object) %7B%0A%09%09%09object.test2();%0A%09%09%7D%0A%09%7D%0A%09%0A%09static class PrintNameWithMyra %7B%0A%09%09public static void print(List%3CString%3E names, Predicate%3CString%3E condition) %7B%0A%09%09%09for (String name : names) %7B%0A%09%09%09%09if (condition.test(name)) %7B%0A%09%09%09%09%09System.out.println(name);%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%7D%0A%09%7D%0A%7D%0A

Create TestFunctionInterface.java