也叫做Stream流,是JDK8開始新增的一套API,用於操作集合或者陣列的資料
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.function.Consumer;
import java.util.function.Predicate;
import java.util.stream.Collectors;
/**
* @author Pickle
* @version V1.0
* @date 2024/3/9 17:29
*/
public class StreamDemo {
public static void main(String[] args) {
List<String> list1 = new ArrayList<>();
Collections.addAll(list1,"張三丰", "張無忌","周芷若","趙敏","張強");
List<String> list2 = new ArrayList<>();
//forEach
// list1.forEach(s-> {
// if (s.startsWith("張") && s.length() == 3){
// list2.add(s);
// }
// });
//增強for迴圈
// for (String s : list1) {
// if(s.startsWith("張") && s.length() == 3){
// list2.add(s);
// }
// }
//stream流
final List<String> list3 = list1.stream().filter(s -> s.startsWith("張")).filter(s -> s.length() == 3).collect(Collectors.toList());
System.out.println(list3);
}
}
Stream流的使用方法
獲取Stream流
Stream的中間方法
- filter
- sorted
- forEach
- limit
- skip
- map
- distinct,自定義型別物件重寫hashCode和equals
- concat
Stream流常見的終結方法
- count
- max
- min
收集Stream流
- collect
- toArray