Java 8 Stream API – limit() & skip() Example
Hello. In this tutorial, we will explore the Stream API: limit() and skip() methods introduced in Java 8.
1. Introduction
Before diving deep into the practice stuff let us understand the methods we will be covering in this tutorial.
- The
skip()
method discards the first n elements of a stream. n cannot be a negative number and if it is higher than the size of a stream the method will return an empty stream - The
limit()
method retrieves the number of elements from the stream truncated to be no longer than the given maximum size. It is an intermediate operation
2. Practice
Let us dive into some practice stuff from here and I am assuming that you already have the Java 1.8 or greater installed in your local machine. I am using JetBrains IntelliJ IDEA as my preferred IDE. You’re free to choose the IDE of your choice.
2.1 Understanding limit() method
Create a java file in the com.java8
package and add the following code. The class will show the limit()
method implementation in different ways.
LimitDemo.java
package com.java8; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; public class LimitDemo { // limit() method retrieves the number of elements from the stream truncated to be no longer than given maximum // size. it is a intermediate operation // syntax - Stream<T> limit(long maxSize); private static void method1() { // creating a numbers list List<Integer> numbers = new ArrayList<>(); for (int i = 1; i < 51; i++) { numbers.add(i); } int maxSize = 10; // taking only first 10 values from stream and converting them into list List<Integer> limit10 = numbers.stream() .limit(maxSize) .collect(Collectors.toList()); // printing System.out.println(limit10); } // driver code public static void main(String[] args) { System.out.println("-- Streams limit() method --\n"); method1(); } }
Run the file as a java application and if everything goes well the following output will be logged in the IDE console.
Console output
-- Streams limit() method -- [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
2.2 Understanding skip() method
Create a java file in the com.java8
package and add the following code. The class will show the skip()
method implementation in different ways.
SkipDemo.java
package com.java8; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; public class SkipDemo { // skip() method discards the first n elements of a stream. 'n' cannot be a negative number and if it is higher // than the size of stream, the skip() method will return an empty stream // syntax - Stream<T> skip(long n); private static void method1() { // creating a numbers list List<Integer> numbers = new ArrayList<>(); for (int i=1; i<16; i++) { numbers.add(i); } List<Integer> skip10 = numbers.stream() .skip(10) .collect(Collectors.toList()); // printing System.out.println(skip10); } // driver code public static void main(String[] args) { System.out.println("-- Streams skip() method --\n"); method1(); } }
Run the file as a java application and if everything goes well the following output will be logged in the IDE console.
Console output
-- Streams skip() method -- [11, 12, 13, 14, 15]
That is all for this tutorial and I hope the article served you with whatever you were looking for. Happy Learning and do not forget to share!
3. Summary
In this tutorial, we learned limit()
and skip()
methods introduced in java8 programming along with the implementation. You can download the source code from the Downloads section.
4. Download the Project
This was a tutorial on learning and implementing the limit()
and skip()
methods in java8 programming.
You can download the full source code of this example here: Java 8 Stream API – limit() & skip() Example