Skip to content
Related Articles

Related Articles

stream.limit() method in Java

View Discussion
Improve Article
Save Article
  • Difficulty Level : Medium
  • Last Updated : 06 Dec, 2018
View Discussion
Improve Article
Save Article

Prerequisite : Streams in Java8
The limit(long N) is a method of object. This method takes one (long N) as an argument and returns a stream of size no more than N. limit() can be quite expensive on ordered parallel pipelines, if the value of N is large, because limit(N) is constrained to return the first N elements in the encounter order and not just any n elements.

Syntax :

Stream<T> limit(long N)

Where N is the number of elements the stream should be 
limited to and this function returns new stream as output.

Exception : If the value of N is negative, then IllegalArgumentException is thrown by the function.

Below are some examples to understand the implementation of the function in a better way.
Example 1 :

// Java code to show implementation
// of limit() function
import java.util.*;
class GFG {
    // Driver code
    public static void main(String[] args)
        // Creating a list of integers
        List<Integer> list = new ArrayList<Integer>();
        // adding elements in the list
        // setting the value of N as 4
        int limit = 4;
        int count = 0;
        Iterator<Integer> it = list.iterator();
        // Iterating through the list of integers
        while (it.hasNext()) {
            // Check if first four i.e, (equal to N)
            // integers are iterated.
            if (count > limit) {
                // If yes then remove all the remaining integers.
        System.out.print("New stream of length N"
                         + " after truncation is : ");
        // Displaying new stream of length
        // N after truncation
        for (Integer number : list) {
            System.out.print(number + " ");

Output :

New stream of length N after truncation is : -2 0 2 4 

Application :

// Java code to show the use of limit() function
import java.util.ArrayList;
import java.util.List;
 class gfg{
     // Function to limit the stream upto given range, i.e, 3
     public static Stream<String> limiting_func(Stream<String> ss, int range){
         return ss.limit(range);
     // Driver code
     public static void main(String[] args){
         // list to save stream of strings
         List<String> arr = new ArrayList<>();
         Stream<String> str =;
         // calling function to limit the stream to range 3
         Stream<String> lm = limiting_func(str,3);

Output :


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!