ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java] 스트림(Stream)의 생성
    Java/Stream 2022. 7. 12. 22:34
    반응형

    스트림(Stream)의 생성

    1. Stream.of()를 사용하는 방법

    Stream.of()로 생성하려는 객체를 입력하면, 새로운 스트림을 반환합니다.

    public static void createStreamOf() {
    	Stream<String> stream = Stream.of("Python", "C", "Java", "C++", "Visual Basic");
    	stream.forEach(System.out::println);
    }

    Console Output

     

    2. Stream.builder() 를 사용하는 방법

    Stream.builder()로 생성하려는 객체를 추가한 후 build()를 호출하면, 새로운 스트림을 반환합니다.

    public static void createStreamBuilder() {
        Stream<String> stream = Stream.<String>builder()
            .add("Python")
            .add("C")
            .add("Java")
            .add("C++")
            .add("Visual Basic")
            .build();
        stream.forEach(System.out::println);
    }

    Console Output

     

    3. Stream.empty() 를 사용하는 방법

    Stream.empty()를 사용하면, 새로운  빈 스트림을 반환합니다.

    public static void createStreamEmpty() {
        Stream<String> stream = Stream.empty();
        System.out.println(stream.count());
    }

    Console Output

     

    4. Stream.generate() 를 사용하는 방법

    Stream.generate() 로 생성하려면 전달인자로 함수를 받고 그 반환값들로 이루어진 새로운 스트림을 반환합니다.

    public static void createStreamGenerate() {
        Stream<String> stream = Stream.generate(() -> "Java").limit(5);
        stream.forEach(System.out::println);
    }

    Console Output

     

    5. Stream.iterate() 를 사용하는 방법

    Stream.iterate() 로 생성하려면 첫 번째로 초기값, 두 번째로 함수를 받고 그 반환값들로 이루어진 새로운 스트림을 반환합니다.

    public static void createStreamIterate() {
        Stream<Integer> stream = Stream.iterate(0, n -> n + 2).limit(5);
        stream.forEach(System.out::println);
    }

    Console Output

     

    6. Collection 인터페이스의 stream() 메소드를 사용하는 방법

    Collection 인터페이스에는 stream() 메소드가 정의되어 있어서, stream() 메소드로 새로운 스트림을 생성할 수 있습니다.

    public static void createListToStream() {
    	List<String> list = Arrays.asList("Python", "C", "Java", "C++", "Visual Basic");
    	Stream<String> stream = list.stream();
    	stream.forEach(System.out::println);
    }

    Console Output

     

    7. Arrays 클래스의 stream() 메소드를 사용하는 방법

    Arrays 클래스에는 stream() 메소드가 정의되어 있어서, stream() 메소드로 새로운 스트림을 생성할 수 있습니다.

    public static void createArrayToStream() {
    	String[] array = new String[]{"Python", "C", "Java", "C++", "Visual Basic"};
    	Stream<String> stream = Arrays.stream(array);
    	stream.forEach(System.out::println);
    }

    Console Output

     

    소스 코드는 Github Repository 참조하세요.
    https://github.com/tychejin1218/blog/blob/main/stream/src/stream/Example01.java

    반응형

    댓글

Designed by Tistory.