about. What I learned/about.Gudi

향상된  for 문에 대하여

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

우리가 아는 대부분의 for반복문 같은 경우에는 이러한 형태를 가지고있다.

하지만 배열에 있는 값들을 포문으로 돌려서 값을 받으려면  i값이 증가할때마다 값을 받아서 중복해야하는 경우가 많다. 하지만 배열을 사용할 경우 매번 0번 부터 뽑아내는 경우가 많음으로 초기값을 설정하고 증감식을 쓴는 것은 귀찮은 일일 것이다.

 

이를 위해 자바에서는 조금은 쉬운 방법의 포문이 존재한다. 많은 사람들은 향상된 for이라고 지칭하고 쓰는 경우가 많다. 따라서 나도 그렇게 알고있어야겠다.

 

향상된 for문

배열 내의 모든 값을 순회하는 for문의 향상된 형태
배열의 모든 요소를 스캔하는 과정에서 인덱스 자체의 값이 필요하지 않을 때는 확장 for문이 유용함

확장 for문은 배열의 리스트를 순회할 때 요소의 값을 변경하지 않고 읽기만 할 때 주로 사용

for([배열 자료형][변수명]:[배열명] or [컬렉션 객체명]){
    // 각각의 변수에 적용할 Java Code;
    // 변수는 배열 내의 각각의 값을 뜻함
}

이런식의 형식을 가지고있다.

 

public class ArgTest {

    public static void main(String[] args) {
        int[] arrayTest = new int[10];
        for (int i = 0; i < 10; i++) {
            arrayTest[i] = (i + 1) * 10;
        }

         // 확장 for문
        for(int num:arrayTest) {
            System.out.print(num + "\t");
        }
        // 10    20    30    40    50    60    70    80    90    100    
    }

}

위와 같은 식의 활용이 가능하다.

 

아래는 내가 직접 구현해보는 향상된 for문을 집어 넣어보겠다.

import java.util.Scanner;

public class newFor {

	public static void main(String[] args) {
		// 우선 배열을 선언하고 배열에 필요한 값들을 초기화 시켜주겠다.
		Scanner scan= new Scanner(System.in);
		
		int dan = scan.nextInt();
		scan.nextLine();
		
		int[] arr = new int[10];
		
		for(int i = 1; i < arr.length; i++) {
			arr[i] = dan * i;
		}
		for(int num : arr) {
			System.out.print(num + "\t");
		}
		
	}

}

 

우선적으로 배열을 생성해야한다. 하고 배열의 값들을 저장해주고 배열의 값들을 프린트할때 사용한다. 위의 활용의 예를 보면 하나의 값을 빼내서 사용할 수 있게 해준다. 내용에 대한 보충이 필요하지만 오늘은 이만하겠다.

 

 

'about. What I learned > about.Gudi' 카테고리의 다른 글

HTML 1일차  (0) 2021.04.21
4/9일 새로운 이야기 - DataBase(feat.Oracle)  (0) 2021.04.11
3/26 개념 및 암기할 것들  (0) 2021.03.31
3/26 Fri_2weeks.  (0) 2021.03.26
3/25 개념 공부 및 문제  (0) 2021.03.25