자바 스트림 필터() 예제

12673 단어 javaexample
Java Stream filter()는 중간 작업입니다.

Java Stream filter()는 Java Stream에서 요소를 필터링하는 데 사용할 수 있습니다.

filter() 메서드는 스트림의 각 요소에 대해 호출되는 술어를 사용합니다. 요소가 결과 스트림에 포함되어야 하는 경우 술어는 true를 리턴해야 합니다. 요소가 포함되지 않아야 하는 경우 술어는 false를 리턴해야 합니다.

자바 스트림 필터() 예제 1



다음은 Java Stream filter() 메서드를 호출하는 예입니다.

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class Tester {
   public static void main(String[] args){
        List<String> lines = Arrays.asList("java", "c", "python");

        List<String> result = lines.stream()       // convert list to stream
                .filter(line -> !"c".equals(line)) // we dont like c
                .collect(Collectors.toList());     // collect the output and convert streams to a List

        result.forEach(System.out::println);  
    }
}


산출:

java
python


자바 스트림 필터() 예제 2



이 예에서는 제품 목록을 만들고 가격이 25,000보다 큰 제품을 필터링합니다. forEach() 메서드를 사용하여 제품 목록을 표시합니다.

먼저 Product 클래스를 생성해 보겠습니다.

class Product {
    private int id;
    private String name;
    private float price;
   // getters and setters 
}
public class StreamFilterExample {
    public static void main(String[] args) {

        // using stream API
        List < Product > filteredProducts = getProducts().stream()
            .filter((product) -> product.getPrice() > 25000 f)
            .collect(Collectors.toList());
        filteredProducts.forEach(System.out::println);
    }

    private static List < Product > getProducts() {
        List < Product > productsList = new ArrayList < Product > ();
        productsList.add(new Product(1, "HP Laptop", 25000 f));
        productsList.add(new Product(2, "Dell Laptop", 30000 f));
        productsList.add(new Product(3, "Lenevo Laptop", 28000 f));
        productsList.add(new Product(4, "Sony Laptop", 28000 f));
        productsList.add(new Product(5, "Apple Laptop", 90000 f));
        return productsList;
    }
}
In the above example, we are using the filter() method to filter products whose price is greater than 25k:
       List < Product > filteredProducts = getProducts().stream()
            .filter((product) -> product.getPrice() > 25000 f)
            .collect(Collectors.toList());


관련 Java 스트림 메소드/API 예


  • Java Stream filter() Example
  • Java Stream map() Example
  • Java Stream flatMap() Example
  • Java Stream distinct() Example
  • Java Stream limit() Example
  • Java Stream peek() Example
  • Java Stream anyMatch() Example
  • Java Stream allMatch() Example
  • Java Stream noneMatch() Example
  • Java Stream collect() Example
  • Java Stream count() Example
  • Java Stream findAny() Example
  • Java Stream findFirst() Example
  • Java Stream forEach() Example
  • Java Stream min() Example
  • Java Stream max() Example
  • Java Stream reduce() Example
  • Java Stream toArray() Example
  • 좋은 웹페이지 즐겨찾기