Building value

Java[for 문] 본문

Java

Java[for 문]

developer_Michael 2023. 3. 23. 18:35
반응형

for문은 반복문 중 가장 많이 사용되는 구문 중 하나입니다.

 

for문은 개인적으로 생각하기에는 처음에 배울때 잘 배워놔야된다는 생각이 듭니다.

 

for문은 초기화 구문, 조건식, 증감식을 포함한 반복 블록을 정의합니다. 

for문의 구조는 다음과 같습니다.

for (초기화 구문; 조건식; 증감식) {
    // 조건식이 true인 동안 반복될 코드
}

for문의 초기화 구문은 반복문이 시작하기 전에 한 번 실행되며, 

일반적으로 반복 변수의 초기화 등에 사용됩니다. 

조건식은 반복문이 실행될 때마다 평가되며, true인 경우 반복문이 계속 실행됩니다. 

증감식은 반복문이 실행된 후에 한 번 실행되며, 

일반적으로 반복 변수의 값을 증가 또는 감소시키는 등의 역할을 합니다.

for문을 사용하여 1부터 10까지의 숫자를 출력하는 예시를 살펴보겠습니다.

for (int i = 1; i <= 10; i++) {
    System.out.println(i);
}

위 예시에서는 i 변수를 1부터 10까지 증가시키면서 반복문이 실행됩니다. 

따라서 1부터 10까지의 숫자가 차례대로 출력됩니다.

for문은 중첩하여 사용될 수도 있습니다. 

중첩된 for문은 내부 루프의 실행 횟수만큼 외부 루프가 실행됩니다. 

다음은 중첩된 for문을 사용하여 구구단을 출력하는 예시입니다.

for (int i = 2; i <= 9; i++) {
    for (int j = 1; j <= 9; j++) {
        System.out.printf("%d x %d = %d%n", i, j, i * j);
    }
}

외부 for문이 2부터 9까지 반복되며, 내부 for문이 1부터 9까지 반복됩니다. 

내부 for문이 실행될 때마다 구구단이 출력됩니다.

 



컬렉션 프레임워크나 배열과 같은 요소들의 집합에 대해 간편하게 반복 작업을 수행할 수 있도록 해주는 반복문은 for-each문입니다. 

for-each문은 다음과 같은 구조를 가집니다.

for (요소의 타입 변수명 : 컬렉션 또는 배열) {
    // 요소에 대한 작업 수행
}

위 구조에서 요소의 타입은 반복되는 컬렉션 또는 배열의 요소 타입과 일치해야 합니다. 

변수명은 각 요소를 참조할 변수명을 지정합니다. 

컬렉션 또는 배열은 반복할 대상을 지정합니다. 

반복문이 실행될 때마다 컬렉션 또는 배열에서 하나씩 요소를 꺼내서 변수명에 대입하며, 

반복문 블록 내에서 요소에 대한 작업을 수행합니다.

for-each문을 사용하여 배열의 모든 요소를 출력하는 예시를 살펴보겠습니다.

int[] arr = {1, 2, 3, 4, 5};
for (int num : arr) {
    System.out.println(num);
}
/*출력 결과
1
2
3
4
5
*/

위 예시에서는 arr 배열의 모든 요소를 num 변수에 대입하여 출력합니다.

foreach문은 컬렉션 프레임워크에서 많이 사용됩니다. 

다음은 ArrayList 컬렉션의 모든 요소를 출력하는 예시입니다.

List<String> list = new ArrayList<>();
list.add("Java");
list.add("Python");
list.add("C++");
for (String str : list) {
    System.out.println(str);
}

//출력 결과
Java
Python
C++

위 코드는 ArrayList를 생성하고 "Java", "Python", "C++" 3개의 문자열을 추가한 다음, 

 

for-each 루프를 사용하여 리스트의 각 요소를 출력하는 기본적인 예시입니다.

 

반응형

'Java' 카테고리의 다른 글

Java[Break + Continue]  (0) 2023.03.23
Java[while 문(+ do-while)]  (0) 2023.03.23
Java[switch 문]  (0) 2023.03.23
Java[if 문]  (0) 2023.03.23
Java[Scanner]  (0) 2023.03.23