[Java 8] 11. Factory Method

seony·2023년 5월 1일

java8

목록 보기
11/16

Factory Method란

  • 스트림을 생성해내는 method들이다
  • of(), generate(), iterate() 가 있다.

of()

  • 메서드에 전달된 값들을 stream으로 만들어낸다.
  • ex) Stream<String> stringStream = Stream.of("adam", "dan", "Julie");

iterate(), generate()

  • 무한 스트림을 만들어낸다.
  • limit()과 함께 사용한다.
  • ex) Stream.iterate(1, x -> x*2)
package com.learn.java.streams;

import java.util.Random;
import java.util.function.Supplier;
import java.util.stream.Stream;

public class StreamOfGenerateIterateExample {

    public static void main(String[] args) {

        // of 예시
        Stream<String> stringStream = Stream.of("adam", "dan", "julie");
        stringStream.forEach(System.out::println);

        // iterate 예시
        Stream.iterate(1, x -> x * 2)
                .limit(10)
                .forEach(System.out::println);

        // generate 예시
        Supplier<Integer> integerSupplier = new Random()::nextInt;
        Stream.generate(integerSupplier)
                .limit(5)
                .forEach(System.out::println);
    }
}

0개의 댓글