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
반응형
'자바(Java) > 자바(Java) 잡다' 카테고리의 다른 글
자바(Java) Arrays.sort()와 Collections.sort() (0) | 2023.02.09 |
---|---|
자바(Java) Iterator와 hasNext() / next() / remove() (0) | 2023.02.02 |
자바(Java) 썸네일 라이브러리 Thumbnailator (0) | 2022.12.18 |
자바(Java) Multipart / MultipartFile / File (파일 업로드 관련) (0) | 2022.12.18 |
자바(Java) int와 Integer의 차이 (0) | 2022.12.09 |
댓글