Open In App

DoubleStream limit() in Java with Examples

Last Updated : 06 Dec, 2018
Improve
Improve
Like Article
Like
Save
Share
Report

DoubleStream limit(long maxSize) returns a stream consisting of the elements of this stream, truncated to be no longer than maxSize in length.

Note : DoubleStream limit() is a short-circuiting stateful intermediate operation i.e, when processed with an infinite input, it may produce a finite stream as a result without processing the entire input.

Syntax :

DoubleStream limit(long maxSize)

Parameters :

  1. DoubleStream : A sequence of primitive double-valued elements. This is the double primitive specialization of Stream.
  2. maxSize : The number of elements the stream should be limited to.

Return Value : The function returns a stream consisting of the elements of this stream, truncated to be no longer than maxSize in length.

Exception : The function throws IllegalArgumentException if maxSize is negative.

Example 1 :




// Java code for DoubleStream limit
// (long maxSize)
import java.util.*;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an DoubleStream
        DoubleStream stream = DoubleStream.of(2.3, 4.4, 6.7, 8.9, 10.5);
  
        // Using DoubleStream limit(long maxSize) to
        // get a stream consisting of the elements of
        // this stream, truncated to be no longer
        // than maxSize in length.
        stream.limit(3).forEach(System.out::println);
    }
}


Output :

2.3
4.4
6.7

Example 2 :




// Java code for DoubleStream limit
// (long maxSize)
import java.util.*;
import java.util.stream.DoubleStream;
  
class GFG {
  
    // Driver code
    public static void main(String[] args)
    {
        // Creating an DoubleStream
        DoubleStream stream = DoubleStream.iterate(4.5, num -> num + 3);
  
        // Using DoubleStream limit(long maxSize) to
        // get a stream consisting of the elements of
        // this stream, truncated to be no longer
        // than maxSize in length.
        stream.limit(4).forEach(System.out::println);
    }
}


Output :

4.5
7.5
10.5
13.5

Difference between DoubleStream limit() and DoubleStream skip() :

  1. The limit() method returns a reduced stream of first maxSize elements but skip() method returns a stream of remaining elements after skipping first maxSize elements.
  2. limit() is a short-circuiting stateful intermediate operation i.e, when processed with an infinite input, it may produce a finite stream as a result without processing the entire input but skip() is a stateful intermediate operation i.e, it may need to process the entire input before producing a result.


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads