








- 다양한 데이터 소스를 표준화된 방법으로 다루는 것
- 스트림은 데이터 소스로부터 데이터를 읽기만할 뿐 변경 안함
- 스트림은 Iterator처럼 일회용임
- 최종 연산 전까지 중간연산이 수행되지 않음
- 컬렉션 / 배열 / 특정 범위의 정수로부터 스트림 생성하기
List<Integer> list = Arrays.asList(1,2,3,4,5); Stream<Integer> intStream = list.stream() // 컬렉션 생성 IntStream intStream = IntStream.range(1,5);
- 자르기 / 걸러내기
- skip(), limit()
- filter(), distinct()
- 정렬하기
- sorted()
- 요소변환
- map()
- 스트림의 모든 요소에 지정된 작업 수행
- foreach();
- 스트림의 배열 변환
- toArray();
- 조건검사
- allMatch(), anyMatch(), noneMatch()
- 요소찾기
- findFrist(), findAny()
- 통계정보
- count(), sum(), average(), max(), min()