0Pricing
Java Academy · Lesson

IntStream and LongStream

Avoid boxing in streams.

Why Primitive Streams Exist

Stream<Integer> boxes every element into an Integer object. IntStream, LongStream, and DoubleStream work on raw primitives to avoid boxing overhead.

import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        int sum = IntStream.of(1, 2, 3, 4).sum();
        System.out.println(sum);
    }
}

Creating an IntStream

Use IntStream.of for explicit values, or Arrays.stream over an int[].

import java.util.Arrays;
import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        int[] data = {10, 20, 30};
        IntStream s = Arrays.stream(data);
        System.out.println(s.max().getAsInt());
    }
}

All lessons in this course

  1. IntStream and LongStream
  2. Range and Aggregate Operations
  3. Mapping to and from Object Streams
  4. Generating Primitive Streams
← Back to Java Academy