1.스트림 : 데이터 처리 연산을 지원하도록 소스에서 추출된 연속된 요소 * 컬렉션의 주제는 데이터고, 스트림의 주제는 계산임 * 소스 : 소스와 같은 순서로 유지됨 * 데이터 처리 연산 : 일반적으로 지원하는 연산과 데이터 베이스와 비슷한 연산을 지원함 2.스트림의 특징 1. 파이프라이닝 2. 내부반복 3. 스트림과 컬렉션의 차이 - 데이터를 언제 계산하느냐가 가장 큰 차이 컬렉션 : 적극적 생성 : 모든 값을 계산할 때까지 기다림, 현재 자료구조에 포함된 모든 값을 계산한 다음 컬렉션에 추가 스트림 : 게으른 생성 : 필요할 때만 값을 계산한다는 의미, 사용자가 요청하는 값만 스트림에서 추출하며 생산자와 소비자 관계를 형성하는 것이 특징임! 컬렉션 인터페이스를 사용하려면 외부반복을 통해 사용해야함 스..
3. 람다란? 람다 표현식 : 메서드로 전달할 수 있는 익명함수를 단순화한 것 - 익명 : 보통 메서드와 달리 이름이 없음 - 함수 : 특정 클래스에 종속되지 않으므로 함수라고 부른다. 단, 파라미터 리스트, 바디, 반환형식, 예외리스트를 포함함 - 전달 : 메서드인수로 전달하거나 변수로 저장할 수 있다. - 간결성 : 익명 클래스처럼 자질 구레한 코드를 구현할 필요가 없다. 람다 표현식은 ( 람다 파라미터 ) -화살표> 람다바디(함수 구현부분) (parameter) -> expression : 표현식 ==> 값으로 평가 될 수 있는 문, 값을 리턴하는 모든 문이 표현식 (parameter) -> {statement;} : 구문 ==> 최소 실행 단위, 명령문 선언문, 할당문, 조건문 반복문 등..
1. 스트림 처리 : 스트림이란 한번에 한개씩 만들어지는 연속적인 데이터 항목들의 모임 자바8에는 java.util.stream 패키지에 스트림 api가 추가됨 스트림 API의 핵심은 기존에는 한번에 한 항목을 처리한 것을 이제 자바8에서는 우리가 하려는 작업을 고수준으로 추상화하여 일련의 스트림으로 만들어 처리할 수 있다는 것 2. 코드 일부를 API로 전달하는 기능 3. 자바 함수 : 메서드(기명함수)와 람다(익명함수)를 일급값으로 사용함. 자바 8에서는 함수를 새로운 값의 형식으로 추가함 (자바에서 조작할 수 있는 값 ex) abc, 1234, 등등과 같은 의미로 "함수"가 값으로 사용될 수 있게 됨) 2장 동작 파라미터화 코드 전달하기 - 동작파라미터화 : 어떻게 실행할 것인지 결정하지 않은 ..