라벨이 pipeline인 게시물 표시

Java8 Stream API

  개요 Java8에서 도입된 Stream API에 대해 알아보자. Stream API는 lambda식, Optional등과 함께 반드시 알아야 할 Java8의 기능이다. Stream생성 Stream을 만드는 방법은 다양하다. 한 가지 중요한 특징은  stream을 만들어서 연산을 적용하더라도 원본 데이터는 변하지 않는다 는 점이다. 따라서 하나의 원본 데이터에서 여러 개의 stream을 만들어서 사용해도 무방하다.   빈 Stream 생성 Stream<String> emtpyStream = Stream.empty();   Collection으로부터 생성 List나 Set과 같은 Collection으로부터 Stream을 만들 수 있다. Collection<String> list = Arrays.asList("s1", "s2", "s3"); Stream<String> streamFromList = list.stream(); Set<String> set = new HashSet<>(Arrays.asList("a", "b", "b")); Stream<String> streamFromSet = set.stream();   배열로부터 생성 String[] arr = new String[]{"s1", "s2", "s3"}; Stream<String> stream = Arrays.stream(arr);   builder를 사용하여 생성 Stream<String> stream = S...