인프런 강의 "더 자바, JAVA8"(백기선님)의 강의를 듣고 정리한 글 입니다.
JAVA8에 추가된 핵심 기능들을 이해하기 쉽게 설명해 주시니 한번씩 들어보시는 것을 추천드립니다.
코드로 아주 간단한 문제를 만들어서 풀어보았습니다.
public class App {
public static void main(String[] args) {
List<Car> cars = new ArrayList<>();
cars.add(new Car("newEngine", 4, "Kia", "korea"));
cars.add(new Car("oldEngine", 4, "Benz", "Germany"));
cars.add(new Car("newEngine", 4, "Hyundai", "korea"));
cars.add(new Car("oldEngine", 6, "Army", "korea"));
cars.add(new Car("newEngine", 4, "Tesla", "USA"));
// 1. oldEngine 으로 만든 차를 모두 출력하시오
cars.stream().filter(car -> "oldEngine".equals(car.getEngine())).forEach(System.out::println);
// 2. 브랜드 이름만 모아서 스트림을 만드시오
Stream<String> carBrands = cars.stream().map(car -> car.getBrand());
// 3. 한국에서 만든 차의 갯수를 출력하시오
System.out.println(cars.stream().filter(car -> car.getCountry().equals("korea")).count());
}
}