Stream APIJava 8에서 추가된 기능으로, stream 형태의 요소에 함수형 연산자를 지원해주는 클래스이다.
스트림 생성null 대신 이용할 수 있다.크기를 지정하지 않으면 무한하기 때문에 특정 사이즈만큼 생성하려면 반드시 limit을통해 최대 크기를 제한해야 한다.초기 값을 시작으로 해서 추가된 값을 생성한다.generate()와 마찬가지로 크기를 지정하지 않으면 무한하기
중간 연산자filter는 말 그대로 필터링, 증 조건에 맞는 것만 거른다는 것이다.위의 코드에서는 람다식을 이용해서 x로 스트림의 요소를 받고 각 요소에 "o"라는 알파벳이 있는 것들만 거른다. 즉, jeong과 pro만 가지고 있는 스트림을 반환한다.map은 기존의
최종 연산자스트림이 비어있는 경우 count, sum은 0을 출력하게 됩니다.하지만 평균,최소,최대 경우에는 표현할 수 없기 때문에 Optional을 이용해 리턴한다.스트림의 값을 모아주는 기능이다. 다시 컬렉션(Collections)으로 돌려준다.Collectors.