接口中的默认方法和静态方法
接口中可以定义具体方法,但必须“default”修饰 接口中可以定义静态方法(系统自动以public 修饰) 接口中定义变量(是静态变量,系统自动以public static final修饰) 接口和类中方法冲突时,适用“父类优先原则”
package com.test;
public interface TestInterface {
static void eat () {
}
double PI = 3.14 ;
default void say () {
System.out.println("hello world" );
}
}
函数式接口和Lambda表达式
package com.test;
import java.util.ArrayList;
import java.util.List;
public class App2 {
public static void main (String[] args) {
List<Integer> list = new ArrayList<>();
list.add(1 );
list.add(2 );
list.add(3 );
list.forEach(ele -> System.out.println(ele));
list.forEach(System.out::println);
}
}
Stream API
组数操作package com.test;
import java.util.Arrays;
public class App3 {
public static void main(String[] args) {
String[] strArr = {"hello" ,"world" ,"hadoop" ,"spark" ,"yarn" ,"storm" };
long count = Arrays.stream(strArr).filter(ele -> ele.length() == 5 ).count ();
System.out.println (count );
}
}
集合操作
package com.test;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
public class App3 {
public static void main (String[] args) {
List<Integer> list = new ArrayList<>();
list .add(1 );
list .add(2 );
list .add(3 );
List<Integer> newList = list .stream().map (ele -> ele * ele).collect(Collectors.toList());
newList.forEach(ele -> System.out.println(ele));
}
}
package com.test;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
public class App3 {
public static void main (String[] args) {
List<Integer> list = new ArrayList<>();
list .add(1 );
list .add(2 );
list .add(3 );
List<Integer> newList = list .parallelStream().map (ele -> ele * ele).collect(Collectors.toList());
newList.forEach(ele -> System.out.println(ele));
}
}
日期操作
https://blog.csdn.net/qq_27093465/article/details/78909797