Java Stream How to - Get square of the first even number greater than 3 from the list








Question

We would like to know how to get square of the first even number greater than 3 from the list.

Answer

import java.util.Arrays;
import java.util.List;
/*from  w ww. j av  a 2  s  .  c  o  m*/
public class Main {
    
  public static void main(String[] args) {
    List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);
    
    //
    
    System.out.println(
      numbers.stream()
      .filter(i->i>2)
      .filter(i->i%2==0)
      .mapToInt(i->i*i)
      .findFirst()
      .getAsInt()
    );
  }
}

The code above generates the following result.