Java8-Stream 스트리밍 max 및 min

5450 단어 Java8

1 max와min


1. Stream에서 자주 사용하는 작업 중 하나는 최대치와 최소치를 구하는 것이다.StreamAPI의 max 및 min 작업은 이 문제를 해결하기에 충분합니다.
2. Stream에서 가장 크거나 가장 작은 요소를 찾으려면 먼저 정렬의 지표로 무엇을 사용해야 하는지를 고려해야 한다.인명 중 가장 짧은 인명을 찾는 것을 예로 들면 서열의 지표는 인명의 길이다.
3. Stream 객체가 이름 길이에 따라 정렬되도록 하려면 Comparator 객체에 전달해야 합니다.Java8은 비교기를 쉽게 실현할 수 있는 새로운 정적 방법comparing을 제공합니다.이전에 우리는 두 대상의 어떤 속성의 값을 비교해야 했는데, 지금은 접근 방법 하나만 제공하면 충분하다.
/**
 * @Author yqq
 * @Date 2021/4/11 10:04
 * @Version 1.0
 */
public class MaxAndMinDemo {
      
    public static void main(String[] args) {
      
        List<People> p1=new ArrayList<>();
        p1.add(new People("1"," ",0));
        p1.add(new People("2"," ",0));
        p1.add(new People("3"," ",0));
       
        People pMin=p1.stream()
            	// 
                .min(Comparator.comparing(p -> p.getName().length()))
            	// 
            	//.max(Comparator.comparing(p -> p.getName().length()))
                .get();
        System.out.println(" :"+pMin);
    }
}
// :People(id=1, name= , age=0)

4. 또한 빈 Stream의 max 방법을 호출하여 Optional 대상을 되돌릴 수 있습니다.Optional 객체는 있을 수도 있고 없을 수도 있는 값을 나타냅니다.Stream이 비어 있으면 이 값이 존재하지 않고, 비어 있지 않으면 이 값이 존재합니다.우선 자세히 따질 필요가 없습니다. 현재 유일하게 기억해야 할 것은 get 방법을 호출하면 Optional 대상의 값을 꺼낼 수 있다는 것입니다.

좋은 웹페이지 즐겨찾기