[Java] 람다식과 Stream - forEach()

남현서·2023년 12월 5일

Java

목록 보기
2/2

1. 람다식과 Stream

사용하는 이유는 코드의 가독성을 좋게 하기 위해서이다.

// 일반 for문
for (String a : list) {
	System.out.println(a);
}

// stream()의 foreach 메소드 활용
list.forEach(a -> System.out.println(a));

약 3줄로 쓸 코드를 한 줄로 줄인 것을 볼 수 있다!!!


forEach() 메소드 사용법

collection.forEach(변수명 -> 반복처리(변수))

배열에서의 사용법

String[] strArray = { "w", "o", "r", "l", "d" }; 
Arrays.stream(strArray).forEach(s -> System.out.println(s));

Map에서의 사용법

Map<String, String> map = new HashMap<>();
map.put("bright", "dark");
map.put("sun", "moon");

map.forEach((key, value) -> System.out.println(key + " : " + value);
// 출력 결과
// bright : dark
// sun : moon

List에서의 사용법

List<String> list = new ArrayList<>();
list.add("a");
list.add("b");

list.forEach(s -> System.out.println(list.indexOf(s) + " : " + s));

람다식 생략 예제

List<String> words = Arrays.asList("apple", "banana", "orange", "grape", "kiwi");
words.stream().forEach(System.out::println);

// 위의 System.out::println 코드는 (x) -> System.out.println(x)와 동일
profile
웹 개발자로 성공하자!

0개의 댓글