람다함수를 활용하여 가독성있게 배열을 다룰 수 있는 Java 스트림에 대한 포스팅 입니다.
filter는 요소들을 조건에 따라 걸러내는 작업을 합니다.
map은 요소들에 특정 함수를 적용합니다.
sorted는 요소들을 정렬해 줍니다.
collect로 반환할 결과를 추출합니다.
List<String> cars = new ArrayList<>(Arrays.asList("Ferrari", "Lamborghini", "Maserati", "Bently"));
System.out.println(cars.stream()
.filter(car -> car.length() > 7)
.map(car -> car.toUpperCase())
.sorted()
.collect(Collectors.toList()));
# [LAMBORGHINI, MASERATI]
foreach로 요소들에 하나씩 접근할 수 있습니다.
List<String> cars = new ArrayList<>(Arrays.asList("Ferrari", "Lamborghini", "Maserati", "Bently"));
cars.stream()
.filter(car -> car.length() > 7)
.map(car -> car.toUpperCase())
.sorted()
.forEach(car -> System.out.println(car));
# LAMBORGHINI
# MASERATI
Collectors.joining()을 활용하여 join을 할 수 있습니다.
List<String> cars = new ArrayList<>(Arrays.asList("Ferrari", "Lamborghini", "Maserati", "Bently"));
System.out.println(cars.stream()
.filter(car -> car.length() > 7)
.map(car -> car.toUpperCase())
.sorted()
.collect(Collectors.joining(" ")));
# LAMBORGHINI MASERATI