본문 바로가기

2017/026

[Java8 in action] Chap5. 스트림 활용 5.1 필터링과 슬라이싱5.1.1 프레디케이트로 필터링스트림 인터페이스는 filter 메서드를 지원한다.filter 메서드는 프레디케이트(불린을 반환하는 함수)를 인수로 받아서 일치하는 모든 요소를 포함하는 스트림을 반환한다.List vegetarianMenu = menu.stream() .filter(Dish::isVegetarian) .collect(toList());모든 채식 요리를 필터링해서 채식 메뉴 생성. 5.1.2 고유 요소 필터링스트림은 고유 요소로 이루어진 스트림을 반환하는 distinct 메서드를 지원한다.고유 여부는 스트림에서 만든 객체의 hashCode, equals로 결정.List numbers = Arrays.asList(1, 2, 1, 3, 3, 2, 4); numbers.st.. 2017. 2. 2.
[Java8 in action] Chap4. 스트림 소개 컬렉션은 자바에서 가장 많이 사용하는 기능 중 하나다.거의 모든 자바 애플리케이션은 컬렉션을 만들고 처리하는 과정을 포함.컬렉션으로 데이터를 그룹화하고 처리할 수 있다.대부분의 자바 애플리케이션에서는 컬렉션을 많이 사용하지만 완벽한 컬렉션 관련 연산을 지원하려면 한참 멀었다.요리 애플리케이션 예시대부분의 비즈니스 로직에는 요리를 카테고리(예를 들면 채식주의자용)로 그룹화 한다든가 가장 비싼 요리를 찾는 등의 연산이 포함된다.데이터베이스에서는 선언형으로 이와 같은 연산을 표현할 수 있다.칼로리가 낮은 요리명 선택 - SELECT name FROM dishes WHERE calorie < 400요리의 속성을 이용하여 어떻게 필터링 할 것인지는 구현할 필요가 없다.자바의 경우 반복자, 누적자등을 이용.SQL에.. 2017. 2. 1.