본문 바로가기
  • 주니어 개발자의
    RESTful 성장기
Web/Java

Stream - (2) 스트림 얻기

by 돌건 2021. 7. 19.

지난 시간에는 스트림이란 무엇인지에 대해 간략하게 알아보았다. 오늘은 스트림을 얻는 방법에 대해 알아보자.

 

1. 소스에 따른 스트림 구현 객체 얻기

리턴 타입 메소드 (매개 변수) 소스
Stream<T> java.util.Collection.stream()
java.util.Collection.parallelStream()
Collection
Stream<T>
IntStream
LongStream
DoubleStream
Arrays.stream(T[]), Stream.of(T[])
Arrays.stream(int[]), IntStream.of(int[])
Arrays.stream(long[]), LongStream.of(long[])
Arrays.stream(double[]), DoubleStream.of(double[])
Array
IntStream IntStream.range(int, int)
IntStream.rangeClosed(int, int)
int range
LongStream LongStream.range(long, long)
LongStream.rangeClosed(long, long)
long range
Stream<Path> Files.find(Path, int, BiPredicate, FileVisitOption)
Files.list(Path)
Directory
Stream<String> Files.lines(Path, Charset)
BufferedReader.lines()
File
DoubleStream
IntStream
LongStream
Random.doubles(...)
Random.ints()
Random.longs()
Random number

 

2. 컬렉션에서 스트림 얻기

List<String> nameList = Arrays.asList("A", "B", "C", "D");
Stream<String> stream = nameList.stream();

 

3. 배열에서 스트림 얻기

String[] nameList = {"A", "B", "C", "D"};
Stream<String> stream = Arrays.stream(nameList);

 

4. 숫자 범위로 스트림 얻기

IntStream stream = IntStream.range(1, 100); // 1 ~ 99
IntStream stream = IntStream.rangeClosed(1, 100); // 1 ~ 100

 

5. 파일에서 스트림 얻기

Path path = Paths.get("file path"); // 파일 경로 정보를 가지는 Path 객체 생성
Stream<String> stream = Files.lines(path, Charset.defaultCharset());

 

6. 디렉토리에서 스트림 얻기

Path path = Paths.get("file path"); // 파일 경로 정보를 가지는 Path 객체 생성
Stream<Path> stream = Files.list(path); // 서브 디렉토리 또는 파일 목록

 

'Web > Java' 카테고리의 다른 글

JVM (Java Virtual Machine)  (0) 2021.09.01
Comparable과 Comparator  (0) 2021.08.10
Stream - (1) 스트림이란?  (0) 2021.07.12
인터페이스 (Interface)  (0) 2021.03.30
추상 클래스 (Abstract Class)  (0) 2021.03.30

댓글