스트림
-
day31 - JAVA (자바, 스트림, 플랫맵, 필터)KIC/JAVA 2021. 7. 27. 15:30
[stream Ex] package javaPro.java_Stream; import java.util.Arrays; import java.util.Iterator; import java.util.List; import java.util.stream.Stream; public class StreamEx0 { public static void main(String[] args) { List list = Arrays.asList("홍길동", "김삿갓", "이몽룡", "성춘향"); System.out.println("외부 반복자 사용"); Iterator it = list.iterator(); while (it.hasNext()) { System.out.println(it.next()); } System.ou..
-
day30 - JAVA (자바, 스트림, 병렬 처리)KIC/JAVA 2021. 7. 27. 00:04
[리덕션] -> 대량의 데이털르 가공해 축소하는 것 -> 데이터의 합계, 평균값, 카운팅 최대값, 최소값 -> 컬렉션의 요소를 리덕션의 결과물로 바로 집계할 수 없을 경우에는 집계하기 좋도록 필터링, 매핑, 정렬, 그룹핑 등의 중간 처리 과정이 필요하다.(스트림 파이프 라인의 필요성) [파이프 라인] -> 여러개의 스트림이 연결되어 있는 구조 -> 파이프라인에서 최종 처리를 제외하고는 모두 중간 처리 스트림 [중간 처리와 최종 처리] -> Stream 인터페이스는 필터링, 매핑, 정렬 등의 많은 중간 처리 메소드를 가진다. -> 스트림에서 다시 중간 처리 메소드를 호출해 파이프 라인을 형성한다 [스트링 타입이 제공하는 최종 처리 메서드] [루핑(loooping)] -> 요소 전체를 반복하는 것을 루핑이라..
-
day29 - JAVA (자바, 메소드 참조, 스트림, 병렬처리)KIC/JAVA 2021. 7. 25. 01:11
[정적 메소드와 인스턴스 메소드 참조] -> 클래스 메소드 참조 클래스 :: 메소드 -> 인스턴스 메소드 참조 참조변수 :: 메소드 [매개변수 메소드 참조] - (a, b) -> {a.instanceMethod(b); } ==> 클래스 :: instanceMethod [생성자 참조] (a, b) -> {return new 클래스(a, b);} ==>클래스 :: new [스트림] -> 자바 8부터 추가된 컬렉션(배열 포함)의 저장 요소를 하나씩 참조해준다. -> 람다식(함수적 - 스타일)으로 처리할 수 있도록 해주는 반복자 [반복자 스트림] [스트림의 특징] -> iterator 와 비슷한 역할을 하는 반복자 -> 람다식으로 요소 처리 코드를 제공 대부분의 요소처리 메소드는 함수적 인터페이스 매개 타입을 ..