1. 개요
이 사용방법(예제)에서는 범위 내의 숫자 시퀀스를 나열하는 다양한 방법을 살펴봅니다.
2. 범위의 숫자 나열
2.1. 전통적인 for 루프
전통적인 for 루프를 사용하여 지정된 범위의 숫자를 생성할 수 있습니다.
public List<Integer> getNumbersInRange(int start, int end) {
List<Integer> result = new ArrayList<>();
for (int i = start; i < end; i++) {
result.add(i);
}
return result;
}
위의 코드는 시작 (포함)에서 끝 (제외) 까지 의 숫자를 포함하는 List을 생성합니다 .
2.2. JDK 8 IntStream.range
JDK 8에 도입된 IntStream 은 지정된 범위에서 숫자를 생성하는 데 사용할 수 있으므로 for 루프의 필요성을 완화합니다.
public List<Integer> getNumbersUsingIntStreamRange(int start, int end) {
return IntStream.range(start, end)
.boxed()
.collect(Collectors.toList());
}
2.3. IntStream.rangeClosed
이전 섹션에서 끝 은 배타적입니다. 끝 이 포함 된 범위의 숫자를 얻으려면 IntStream.rangeClosed 가 있습니다 .
public List<Integer> getNumbersUsingIntStreamRangeClosed(int start, int end) {
return IntStream.rangeClosed(start, end)
.boxed()
.collect(Collectors.toList());
}
2.4. IntStream.iterate
이전 섹션에서는 일련의 숫자를 얻기 위해 범위를 사용했습니다. 시퀀스에 몇 개의 숫자가 필요한지 알면 IntStream.iterate 를 활용할 수 있습니다 .
public List<Integer> getNumbersUsingIntStreamIterate(int start, int limit) {
return IntStream.iterate(start, i -> i + 1)
.limit(limit)
.boxed()
.collect(Collectors.toList());
}
여기서 limit 매개변수는 반복할 요소의 수를 제한합니다.
3. 결론
이 기사에서는 범위 내에서 숫자를 생성하는 다양한 방법을 살펴보았습니다.
언제나처럼 코드 스니펫 은 GitHub 에서 찾을 수 있습니다 .