JAVA/TIL : JAVA

[JAVA] 조건문 - for each문

ODlll 2022. 1. 16. 01:21

파이썬에서 for문으로 리스트를 탐색할 때 같은 출력 결과이지만 두 가지 방법이 있다.

mudo = ['유재석', '노홍철', '정형돈', '박명수', '정준하', '하하', '길']

먼저 무한도전 멤버 이름이 담긴 mudo라는 리스트를 탐색할 때,

 

1.

for i in range(0, len(mudo)):
    print(mudo[i])

range로 리스트의 위치(0~6)에 해당되는 mudo 리스트의 값을 탐색하는 것과

 

2.

for i in mudo:
    print(i)

아예 mudo라는 리스트의 0~6번째의 값 자체를 탐색하는 경우가 있었는데,

자바의 반복문을 공부하면서 자바에는 이런게 없나 하고 찾아본 결과

 

for-each라는 구문이 있었다!

 

먼저, 입문 형태로 배운 자바의 for 구문은

		for(int i=0; i<classgroup.length; i++) {
			System.out.println(classgroup[i]);
		}

이런 식으로 파이썬 1번 구문과 비슷하게 배열의 위치 값으로 탐색하는 경우로 배웠는데

 

for-each 구문의 경우

		String[] members = {"유재석", "노홍철", "정형돈", "박명수", "정준하", "하하", "길"};
		for (String e : members) {
			System.out.println(e);
		}

이렇게 파이썬 2번 구문과 비슷한 방법이 있었다.

members 배열의 값들을 하나씩 e에 할당한 뒤 출력하는 코드인데,

for문에 int i; i<10; i++ 등 지정하지 않고, e에 배열의 값들을 하나씩 할당한 뒤 출력한다.

 

어떤 문제를 해결하냐에 따라서 코드의 쓰임이 달라지겠지만, for-each문 역시 유용하게 쓰일 것으로 생각된다.