Java IntStream.Range ExampleUse the IntStream.range and rangeClosed methods to create ranges of numbers.
IntStream.range. Suppose you want to operate on numbers in sequential order: 1, 2, 3. You could create an array and use a for-loop to get these numbers.
Alternatively, you can use IntStream.range with 2 arguments. The IntStream.rangeClosed method, which is almost the same, is also available.
An example. This program demonstrates IntStream.range and IntStream.rangeClosed. It creates the IntStreams and then displays them to the console.
Range This has an exclusive end. So the second argument is not included in the IntStream that is returned.
RangeClosed This has an inclusive (closed) end. If the second argument is 15, the 15 is included.
Java program that uses IntStream.range
import java.util.Arrays; import java.util.stream.IntStream; public class Program { public static void main(String[] args) { // Use IntStream.range. IntStream range1 = IntStream.range(10, 15); System.out.println("Range(10, 15): " + Arrays.toString(range1.toArray())); // Use IntStream.rangeClosed. IntStream range2 = IntStream.rangeClosed(10, 15); System.out.println("RangeClosed(10, 15): " + Arrays.toString(range2.toArray())); } }
Range(10, 15): [10, 11, 12, 13, 14] RangeClosed(10, 15): [10, 11, 12, 13, 14, 15]
Some notes. Range() is a useful method. We can create a Stream and then operate upon it with IntStream-based methods like filter(). This is a powerful approach to solving problems.
A summary. Typically it is a better idea to create a range-based IntStream with range() and rangeClosed(). But an int array, and the Arrays.stream() method, can also be used.
© 2007-2021 sam allen.
see site info on the changelog.