遍历集合
调用集合的 public void forEach(Consumer action) 方法,通过 lambda 表达式的方式遍历集合中的元素。以下是 Consumer 接口的方法以及遍历集合的操 作。Consumer 接口是 jdk 为我们提供的一个函数式接
import java.util.ArrayList;import java.util.List;import java.util.function.Consumer;class ConsumerImp1 implements Consumer{@Overridepublic void accept(Object o) {System.out.println(o);}}public class Test4 {public static void main(String[] args) {List<String> list = new ArrayList<>();list.add("a");list.add("b");list.add("c");list.add("d");// ConsumerImp1 consumerImp1 = new ConsumerImp1(); //常规方式// list.forEach(consumerImp1);list.forEach(System.out::println);}}
删除集合中的元素
通过 public boolean removeIf(Predicate filter)方法来删除集合中的某个元 素,Predicate 也是 jdk 为我们提供的一个函数式接口,可以简化程序的编写。
import java.util.ArrayList;import java.util.List;public class Test5 {public static void main(String[] args) {List<String> list = new ArrayList<>();list.add("a");list.add("b");list.add("c");list.add("d");list.removeIf(ele->ele.equals("b"));list.forEach(System.out::println);}}
元素排序
之前我们若要为集合内的元素排序,就必须调用 sort 方法,传入比较器重写 compare 方法的比较器对象,现在我们还可以使用 lambda 表达式来简
import java.util.ArrayList;import java.util.Comparator;import java.util.List;class ComparatorImp1 implements Comparator<String>{@Overridepublic int compare(String o1, String o2) {return o1.compareTo(o2);}}public class Test6 {public static void main(String[] args) {List<String> list = new ArrayList<>();list.add("a");list.add("c");list.add("b");list.add("d");list.sort(new ComparatorImp1());list.forEach(System.out::println);}}
import java.util.ArrayList;
import java.util.List;
public class Test6 {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("a");
        list.add("c");
        list.add("b");
        list.add("d");
        list.sort((o1,o2)->o1.compareTo(o2));
        list.forEach(System.out::println);
    }
}
                    