본문 바로가기
자바(Java)/자바(Java) 잡다

자바(Java) forEach() 사용법

by 인생즐겜러 2022. 12. 9.
728x90
반응형

 

 

 

해당 Method는 자바8 에서 Stream이 도입 되면서 등장한 Method 이다.

 

list , array , map 과 같은 집합을 표현하는 형식들에 사용하는 Method고

해당 객체 안에 들어 있는 값을 하나씩 반복적으로 꺼내거나 처리를 할 때 사용한다.

(즉, 배열에 사용하는 for 문 같은 느낌)

 

각 형식에 따라 사용법은 약간씩 다르다.

 

 

 

 

 

list에서의 forEach

 

간결한 코딩을 위해 lamda 식으로 사용한다.

yyy가 있는 자리는 임의의 매개변수를 지정한 것이다.

해당 매개 변수에 list의 값이 하나씩 반복적으로 들어간다고 보면 된다.

 

import java.util.ArrayList;
import java.util.List;

public class Test {

	public static void main(String[] args) {

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

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

 

결과

0 : a
1 : b
2 : c
3 : d
4 : e

 

 

 

 

 

Map에서의 forEach

 

Map은 Key와 Value로 구성되어 있기 때문에

매개변수도 Key와 Value를 사용한다.

 

import java.util.HashMap;
import java.util.Map;

public class Test {

	public static void main(String[] args) {

		Map<String, String> map = new HashMap<>();
		map.put("a", "apple");
		map.put("b", "bear");
		map.put("c", "coin");

		map.forEach((key, value) -> System.out.println(key + " : " + value));
	}
}

 

결과

a : apple
b : bear
c : coin

 

 

 

 

 

배열에서의 forEach

 

import java.util.Arrays;

public class Test {

	public static void main(String[] args) {

		String[] aaa = { "a", "b", "c", "d", "e" };
		Arrays.stream(aaa).forEach(yyy -> System.out.println(yyy));
	}
}

 

결과

a
b
c
d
e

 

728x90
반응형

댓글