for-each 루프 Java

⚡ 스마트 요약

for-each 루프 Java for-each는 카운터나 인덱스 없이 배열과 리스트를 순회하는 데 사용되는 for 루프의 간소화된 형태입니다. 이 자료에서는 for-each 구문을 설명하고, 기존 for 루프와 비교하며, 예상 출력과 함께 완전한 예제를 보여줍니다.

  • 🔁 목적 : for-each 루프는 배열이나 리스트의 모든 요소를 ​​직접 순회하므로 코드 양이 줄어듭니다.
  • 🧮 카운터 없음: 기존의 for 루프와 달리 for-each는 인덱스, 조건 또는 증가값이 필요하지 않습니다.
  • 🧩 구문 : 컬렉션의 유형과 일치하는 임시 변수를 선언한 다음, 반복할 컬렉션을 선언합니다.
  • ⚖️ 비교: 이 예시는 카운터 기반 루프와 for-each 루프에서 동일한 출력이 나오는 것을 보여줍니다.
  • ⚠️ 한정: for-each 루프는 인덱스를 제공하지 않으므로 하위 요소를 쉽게 수정할 수 없습니다.

for-each 루프 Java

Java For-Each 어레이

for-each 루프는 배열을 순회하는 데 사용되는 또 다른 형태의 for 루프입니다. for-each 루프는 코드를 크게 줄여주며, 루프 내에서 인덱스, 즉 카운터를 사용하지 않습니다.

구문 :

for (<DataType of array/List> <Temp variable name> : <Array/List to be iterated>) {
    System.out.println();
    // Any other operation can be done with this temp variable.
}

배열 반복/반복 Java

카운터를 사용하지 않고 반복하려는 String 배열을 사용하여 예를 들어보겠습니다. 다음과 같이 초기화된 String 배열 arrData를 고려합니다.

String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};

비록 당신이 크기를 찾는 것과 같은 방법을 알고 있을 수도 있지만 정렬 기존의 for 루프(카운터, 조건, 증가)를 사용하여 배열의 각 요소를 순회하는 대신, 카운터를 사용하지 않는 보다 최적화된 접근 방식이 필요합니다.

이는 "for" 루프의 일반적인 접근 방식입니다.

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

카운터의 사용법과 그 카운터가 배열의 인덱스로 사용되는 방식을 확인할 수 있습니다. Java 배열의 각 요소를 반복하는 "for" 루프를 사용하는 방법을 제공합니다.

다음은 앞서 선언한 배열에 대한 코드입니다.

for (String strTemp : arrData) {
    System.out.println(strTemp);
}

반복문 간의 차이점을 확인할 수 있습니다. 코드가 상당히 줄어들었습니다. 또한, 반복문 내에서 인덱스, 즉 카운터를 사용하지 않습니다. for-each 반복문에서 선언된 데이터 형식이 실제 변수의 데이터 형식과 일치하는지 확인하십시오. ArrayList 당신이 반복하고 있다는 것.

각 루프의 예

여기 전체 학생들이 위 설명을 보여주고 있습니다.

class UsingForEach {
  public static void main(String[] args) {
    String[] arrData = {"Alpha", "Beta", "Gamma", "Delta", "Sigma"};
    //The conventional approach of using the for loop
    System.out.println("Using conventional For Loop:");
    for(int i=0; i< arrData.length; i++){
      System.out.println(arrData[i]);
    }
    System.out.println("\nUsing Foreach loop:");
    //The optimized method of using the for loop - also called the foreach loop
    for (String strTemp : arrData){
      System.out.println(strTemp);
    }
  }
}

배열 반복 Java

예상 출력 :

Using conventional For Loop:
Alpha
Beta
Gamma
Delta
Sigma

Using Foreach loop:
Alpha
Beta
Gamma
Delta
Sigma

자주 묻는 질문

네. AI 어시스턴트는 인덱스 기반 반복문을 인덱스가 필요 없는 for-each 반복문으로 리팩토링할 수 있습니다. 하지만 위치나 요소 수정에 인덱스가 필요한 경우는 여전히 검토해야 합니다.

AI 도구는 인덱스가 사용되지 않을 때 가독성을 위해 for-each 루프를 제안하는 경우가 많습니다.ping 요소의 위치나 수정이 중요한 경우 인덱스 루프를 사용합니다. 선택은 특정 작업에 따라 달라집니다.

일반적인 for 루프는 카운터와 인덱스를 사용하여 반복을 제어합니다. for-each 루프는 카운터 없이 각 요소를 직접 순회하므로 가독성은 향상되지만 요소 접근을 위한 인덱스를 제공하지 않습니다.

반복문 변수를 변경해도 배열 요소는 업데이트되지 않습니다. 배열 요소는 값의 복사본을 저장하기 때문입니다. 요소를 제자리에서 수정하려면 인덱스를 사용하는 일반적인 for 반복문을 사용하십시오.

이 게시물을 요약하면 다음과 같습니다.