天天看點

java list方法 極客_java使用lambda表達式對List集合進行操作(JDK1.8)

import java.util.ArrayList;

import java.util.List;

import java.util.function.Predicate;

import java.util.stream.Collectors;

public class LambdaStudy

{

public static void main(String[] args) {

//初始化list集合

List list = new ArrayList();

list.add("測試資料1");

list.add("測試資料2");

list.add("測試資料3");

list.add("測試資料12");

//使用λ表達式周遊集合

list.forEach(s -> System.out.println(s));

//結合Predicate使用和過濾條件篩選元素

Predicate contain1 = n -> n.contains("1");

Predicate contain2 = n -> n.contains("2");

//根據條件周遊集合

list.stream().filter(contain1).forEach(n -> System.out.println(n));

list.stream().filter(s -> contain1.test(s)).forEach(s -> System.out.println(s));

list.stream().filter(contain1.and(contain2)).forEach(n -> System.out.println(n));

list.stream().filter(contain1.or(contain2)).forEach(n -> System.out.println(n));

//将過濾後的元素重新放到一個集合中

List newList = list.stream().filter(contain1.and(contain2)).collect(Collectors.toList());

newList.forEach(s -> System.out.println(s));

}

}