본문 바로가기

프로그래밍(코딩)/JAVA(이클립스)

Java 독학하기-(8) 자바 언어의 '반복문'에 대해 알아보기

반응형

'Java 독학하기-(8) 자바 언어의 '반복문'에 대해 알아보기'

 

 

저번 글에서는 자바 언어에서의 '조건문'에 대해 알아보았는데요, 이번 글에서는 조건문에 이어서 자바 뿐만 아니라 여러 프로그래밍 언어들에서 가장 핵심적인 부분이라고 볼 수 있는 '반복문'에 대해 알아보도록 하겠습니다.

 

 

 


 

'반복문'이란 프로그래밍에서 반복적인 일을 효율적으로 처리하기 위해 사용하는 명령문입니다.

 

 

package loopexample;

public class BasicLoop {

	public static void main(String[] args) {
		int num = 1;
		num += 2;
		num += 3;
		num += 4;
		num += 5;
		num += 6;
		num += 7;
		num += 8;
		num += 9;
		num += 10;
		
		System.out.println("1부터 10까지의 합은 " + num + "입니다.");
	}

}

 

예를 들어 1부터 10까지 더한다고 가정하였을 때, 반복문을 사용하지 않고는 이렇게 표현을 할 수 있을 텐데요, 코드의 길이도 길어지고, 한눈에 파악하기도 어려워 효율적으로 보이지 않습니다.

 

'반복문' 종류로는 while문, do-while문, for문으로 나누어 볼 수 있습니다. 이제 각 반복문의 종류에 따른 특징을 알아보면서 위에서 소개한 1부터 10까지 더하는 코드를 반복문을 이용해 깔끔하게 보기 편하며, 효율적인 코드를 작성해보도록 하겠습니다.

 

 


 

우선 첫번째로 알아볼 '반복문'은 바로 while문입니다. while문의 구조를 살펴보면 다음과 같습니다.

 

 

 

while(조건식) {

수행문;

}

 

조건식이 참인 동안에만 중괄호{ } 안의 수행문을 반복하여 실행합니다. 또한 수행문이 하나일 경우, 중괄호 { }는 생략이 가능합니다.

 

 

 

package loopexample;

public class WhileExample1 {

	public static void main(String[] args) {
		int num = 1;
		int sum = 0; //초기화 필수
		
		while(num <=10) {
			sum += num;
			num++;
		}
		System.out.println("1부터 10까지의 합은 " + sum + "입니다.");
	}

}

 

위 코드는 while문을 이용하여 1부터 10까지 더한 총 값을 구하는 코드 예시입니다. while 기본 형식에 알맞게 잘 맞게 코드가 짜인 모습을 볼 수 있습니다. 그리고 주의해야 할 점으로 반복문의 조건식이 올바르게 작동하기 위해서는 변수 값들을 초기화해주어야 연산이 정상적으로 이루어질 수 있다는 것입니다.

 

(아! 당연히 1부터 10까지 더한 결과를 출력하는 위 코드 뿐만 아니라 아래에 소개된 코드들의 출력 결과도 "1부터 10까지의 합은 55입니다."가 되겠죠?)

 

 


 

다음으로 while문과 비슷한 듯 다른 do-while문에 대해 알아보도록 하겠습니다. do-while문의 구조를 살펴보자면 다음과 같습니다.

 

 

 

do {

수행문;

} while(조건식);

 

do-while문은 { }안의 수행문을 우선 수행한 뒤에 조건식의 참, 거짓에 따라 수행 여부가 결정됩니다. 즉, 조건에 만족하지 않더라도 반드시 한 번은 수행되므로 반드시 한 번 이상 수행이 필요할 때 do-while문을 사용하게 됩니다.

 

 

 

package loopexample;

public class DowhileExample {

	public static void main(String[] args) {
		int num = 1;
		int sum = 0;
		
		do {
			sum += num;
			num++;
		} while (num <= 10);
		
		System.out.println("1부터 10까지의 합은 " + sum + "입니다.");

	}

}

 

위 코드는 do-while문을 이용해 1부터 10까지 합을 구하는 코드 예시입니다. 위 코드를 실행하면 조건식에 상관없이 num의 1이 sum에 더해지고, num값은 2가 된 후, 그 다음 조건식의 참, 거짓에 따라 연산이 이루어진다는 것을 알 수 있습니다.

 

 


 

마지막으로 '반복문'을 대표한다고 봐도 무방할 듯한 for문에 대해 알아보겠습니다. for문의 구조는 아래와 같습니다.

 

 

 

for (초기화식; 조건식; 증감식) {

수행문;

}

 

for문에서 소괄호 ( )안의 식들에 대해 알아보면, 초기화식은 처음 for문이 시작될 때 해당 변수 값을 초기화하는 식입니다. 조건식은 다른 반복문들과 동일하게 언제까지 반복할 지를 결정하는 역할을 합니다. 증감식은 해당 변수 값을 +1 혹은 -1하여 조건식이 올바르게 작동될 수 있도록 합니다.

 

또한 for문에서는 이전에 초기화 했을 경우, 초기화식 생략, for문 내에 if문을 이용해 조건식을 표현할 경우, 조건식 생략, for문 내에 증감식 표현 시, 증감식 생략이 가능합니다. 만약 초기화식, 조건식, 증감식 모두 생략하게 되면 for(;;) 형태로 무한 반복이 이루어집니다.

 

 

 

package loopexample;

public class ForExample1 {

	public static void main(String[] args) {
		int i;
		int sum;
		
		for(i=1, sum = 0; i <= 10; i++) {
			sum += i;
		}
		System.out.println("1부터 10까지의 합은 " + sum + "입니다.");
	}

}

 

위 코드는 for문을 이용해 1부터 10까지 합을 구하는 코드 예시인데요, 변수를 선언할 때 동시에 하지 않고, for문에서의 초기화식 부분에서 초기화를 하였습니다. 이 부분을 통해 알 수 있는 점은 꼭 초기화식과 증감식 부분은 ,(콤마)를 이용해 여러 식을 삽입해도 문제가 되지 않는다는 것을 알 수 있습니다.

 

 

 

package loopexample;

public class NestedLoop {

	public static void main(String[] args) {
		int dan;
		int times;
		
		for (dan = 1; dan <= 9; dan++) {
			for (times = 1; times <= 9; times++) {
				System.out.println(dan + "X" + times + "=" + dan * times);
			}
			System.out.println("------");
		}

	}

}

 

위 코드는 '중첩 반복문'을 이용해 1단부터 9단까지의 구구단을 출력하는 프로그램입니다. 외부 반복문은 구구단 1단~9단까지 반복하며, 내부 반복문은 각 단에서 1~9까지 곱을 수행합니다. 위 코드의 출력 값은 다음과 같습니다.

 

 

 

 


 

 

Do it! 자바 프로그래밍 입문
국내도서
저자 : 박은종
출판 : 이지스퍼블리싱 2018.08.06
상세보기

 

이렇게 자바 프로그래밍에서의 '반복문'인 while문, do-while문, for문의 특징에 대해 정리해보았습니다. 다음 글에서는 반복문의 확장 부분인 'continue문'과 'break문'에 대해 정리해보도록 하겠습니다. 앞으로 자바 프로그래밍 언어를 제대로 알기 위해 갈 길이 멀지만 계속해서 나아가기 위해 노력해야겠네요.^^

 

 

 

 

 

 

 

 

 

 

 

 

추천하는 글

 

 

ABKO APC930 QHD 웹캠 구입 및 개봉기, 간단 사용 후기까지

'ABKO APC930 QHD 웹캠 구입 및 개봉기, 간단 사용 후기까지' 요즘 코로나 바이러스로 인해 비대면 방식의 수업 및 회의가 거의 진행되고 있는데요, 이때 꼭 필요한 장비로 웹캠을 꼽을 수 있습

anywhereifyoucan.com

 

 

티스토리 ~.tistory.com에서 2차 도메인으로 바로 연결되게 하는 방법은?

'티스토리 ~.tistory.com에서 2차 도메인으로 바로 연결되게 하는 방법은? 제 블로그는 거의 시작 초기부터 따로 도메인을 구입하여 2차 도메인으로 설정해놓았기 때문에 ~.tistory.com이 아닌 ~.com으로

anywhereifyoucan.com

 

반응형