[Java] 숫자 범위를 스트림으로 표현하는 방법은 무엇인가?
1. Question
자바에서 숫자 범위를 Stream API로 표현하는 방법은 무엇인가?
2. Answer
예를 들어 1에서 100 사이의 숫자를 생성하려 한다고 가정하면, Java 8의 IntStream과 LongStream에서는 range와 rangeClosed라는 두 가지 정적 메서드를 제공한다. 두 메서드 모두 첫 번째 인수로 시작값을, 두 번째 인수로 종료값을 갖는다. range 메서드는 종료값이 결과에 포함되지 않는 반면, rangeClosed는 종료값이 결과에 포함된다는 점이 다르다.
IntStream evenNumbers =
IntStream.rangeClosed(1, 100) // [1, 100]의 범위를 나타낸다.
.filter(n -> n % 2 == 0); // 1부터 100까지의 짝수 스트림
System.out.println(evenNumbers.count()); // 1부터 100까지에는 50개의 짝수가 있다.
IntStream=> [Java] 기본형 특화 스트림이란?
3. Detail
None
4. Reference
- “모던 자바 인 액션” (저자: 라울-게이브리얼 우르마, 마리오 푸스코, 앨런 마이크로프트)
댓글남기기