๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด/์ž๋ฐ”

4. ์ œ์–ด ํ๋ฆ„ ์ดํ•ดํ•˜๊ธฐ

by alswlfl 2026. 6. 2.

์กฐ๊ฑด๋ฌธ

์ฃผ์–ด์ง„ ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๋ฌธ์žฅ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•˜๋Š” ๊ฒƒ

if๋ฌธ

์ฃผ์–ด์ง„ ์กฐ๊ฑด์‹์ด '์ฐธ'์ผ ๊ฒฝ์šฐ ์ค‘๊ด„ํ˜ธ ์•ˆ์— ์žˆ๋Š” ๋ฌธ์žฅ ์ˆ˜ํ–‰

if (์กฐ๊ฑด์‹) {
   ์ˆ˜ํ–‰๋ฌธ; // ์กฐ๊ฑด์‹์ด ์ฐธ์ผ ๊ฒฝ์šฐ์— ์ด ๋ฌธ์žฅ์„ ์ˆ˜ํ–‰
}

// ๋งŒ์•ฝ ๋‚˜์ด๊ฐ€ 8์‚ด ์ด์ƒ์ด๋ฉด ํ•™๊ต์— ๋‹ค๋‹Œ๋‹ค.
int age = 10;
if(age >= 8) {
	System.out.println("ํ•™๊ต์— ๋‹ค๋‹™๋‹ˆ๋‹ค");
}

if-else๋ฌธ

์ฃผ์–ด์ง„ ์กฐ๊ฑด์‹์ด '์ฐธ'์ผ ๊ฒฝ์šฐ์— if๋ฌธ ๋ธ”๋ก ์•ˆ์— ์žˆ๋Š” ๋ฌธ์žฅ์„ ์ˆ˜ํ–‰ํ•˜๊ณ  '๊ฑฐ์ง“'์ผ ๊ฒฝ์šฐ์—๋Š” else๋ฌธ ๋ธ”๋ก ์•ˆ์— ์žˆ๋Š” ๋ฌธ์žฅ์„ ์ˆ˜ํ–‰

๋”ฐ๋ผ์„œ, else๋ฌธ์—๋Š” '์กฐ๊ฑด์‹'์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ

if(์กฐ๊ฑด์‹) {
	์ˆ˜ํ–‰๋ฌธ1; // ์กฐ๊ฑด์‹์ด ์ฐธ์ผ ๊ฒฝ์šฐ์— ์ด ๋ฌธ์žฅ์„ ์ˆ˜ํ–‰
} else {
	์ˆ˜ํ–‰๋ฌธ2; // ์กฐ๊ฑด์‹์ด ๊ฑฐ์ง“์ผ ๊ฒฝ์šฐ์— ์ด ๋ฌธ์žฅ์„ ์ˆ˜ํ–‰
}

// ๋งŒ์•ฝ ๋‚˜์ด๊ฐ€ 8์‚ด ์ด์ƒ์ด๋ฉด ํ•™๊ต์— ๋‹ค๋‹Œ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ํ•™๊ต์— ๋‹ค๋‹ˆ์ง€ ์•Š๋Š”๋‹ค
ing age = 7;
if(age>=8){
	System.out.println("ํ•™๊ต์— ๋‹ค๋‹™๋‹ˆ๋‹ค.");
} else {
	System.out.println("ํ•™๊ต์— ๋‹ค๋‹ˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.");
}

if-else if-else๋ฌธ

if(์กฐ๊ฑด์‹1){
	์ˆ˜ํ–‰๋ฌธ1; // ์กฐ๊ฑด์‹1์ด ์ฐธ์ผ ๊ฒฝ์šฐ์— ์ˆ˜ํ–‰ํ•จ
} else if(์กฐ๊ฑด์‹2) {
	์ˆ˜ํ–‰๋ฌธ2; // ์กฐ๊ฑด์‹2๊ฐ€ ์ฐธ์ผ ๊ฒฝ์šฐ์— ์ˆ˜ํ–‰ํ•จ
} else if(์กฐ๊ฑด์‹3) {
	์ˆ˜ํ–‰๋ฌธ3; // ์กฐ๊ฑด์‹3์ด ์ฐธ์ผ ๊ฒฝ์šฐ์— ์ˆ˜ํ–‰ํ•จ
} else {
	์ˆ˜ํ–‰๋ฌธ4; // ์œ„์˜ ์กฐ๊ฑด์ด ๋ชจ๋‘ ํ•ด๋‹นํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์— ์ˆ˜ํ–‰ํ•จ
}
์ˆ˜ํ–‰๋ฌธ5; // if-else if-else ๋ฌธ์ด ๋๋‚œ ํ›„ ์ˆ˜ํ–‰ํ•จ

switch-case๋ฌธ

์กฐ๊ฑด์‹์˜ ๊ฒฐ๊ณผ๊ฐ€ ์ •์ˆ˜ ๋˜๋Š” ๋ฌธ์ž์—ด ๊ฐ’์ด๊ณ  ๊ทธ ๊ฐ’์— ๋”ฐ๋ผ ์ˆ˜ํ–‰๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๊ฐ๊ฐ ๋‹ค๋ฅธ ๊ฒฝ์šฐ์— switch-case๋ฌธ์œผ๋กœ ๊ตฌ์„ฑํ•˜๋Š” ๊ฒƒ์ด ์ฝ”๋“œ๋„ ๊น”๋”ํ•˜๊ณ  ๊ฐ€๋…์„ฑ์ด ์ข‹์Œ

switch(rank) {
	case 1: medalColor = 'G';
    		break;
    case 2: medalColor = 'S';
    		break;
    case 3: medalColor = 'B';
    		break;
    default: medalColor = 'A';
}
  • case๋ฌธ์—๋Š” ์—ฌ๋Ÿฌ ๋ฌธ์žฅ์ด ์žˆ์–ด๋„ {}๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ
  • case: ~break; ๊นŒ์ง€๊ฐ€ ์กฐ๊ฑด์— ํ•ด๋‹นํ•˜๋Š” ๋ฌธ์žฅ์ž„
  • ๊ฐ’๊ณผ ์ผ์น˜ํ•˜๋Š” case๊ฐ€ ์—†๋‹ค๋ฉด default ์ฝ”๋“œ๊ฐ€ ์ˆ˜ํ–‰๋จ
  • break๋ฌธ์€ switch-case๋ฌธ์˜ ์ˆ˜ํ–‰์„ ๋ฉˆ์ถ”๊ณ  ๋น ์ ธ๋‚˜๊ฐ€๋„๋ก ๋งŒ๋“ฆ. switch-case๋ฌธ์—์„œ ์‹ค์ˆ˜๋กœ break๋ฌธ์„ ์“ฐ์ง€ ์•Š์œผ๋ฉด case ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๊ตฌ๊ฐ„๋ถ€ํ„ฐ ์ž‡๋”ฐ๋ผ ๋‚˜์˜ค๋Š” ๋ฌธ์žฅ๊นŒ์ง€ ๋ชจ๋‘ ์ˆ˜ํ–‰๋จ

๋ฐ˜๋ณต๋ฌธ

๋ฐ˜๋ณต๋˜๋Š” ์ผ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ

while๋ฌธ

์กฐ๊ฑด์‹์ด ์ฐธ์ธ ๋™์•ˆ ์ˆ˜ํ–‰๋ฌธ์„ ๋ฐ˜๋ณตํ•ด์„œ ์ˆ˜ํ–‰ํ•จ

// ์กฐ๊ฑด์‹์ด ์ฐธ์ธ ๋™์•ˆ ๋ฐ˜๋ณต ์ˆ˜ํ–‰
while(์กฐ๊ฑด์‹) {
	์ˆ˜ํ–‰๋ฌธ1;
    ...
}
์ˆ˜ํ–‰๋ฌธ2;

// num ๊ฐ’์ด 10๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ๋™์•ˆ
int num = 1;
int sum = 0;
while(num <= 10) {
	sum += num; // ํ•ฉ๊ณ„๋ฅผ ๋œปํ•˜๋Š” sum์— num์„ ๋”ํ•˜๊ณ 
    num++; // num์— 1์”ฉ ๋”ํ•ด๋‚˜๊ฐ
}
  • ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋™์•ˆ ๋ฐ˜๋ณต๋˜๋Š” ๋ช…๋ น์„ ์ˆ˜ํ–‰ํ•˜๊ณ , ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ˆ˜ํ–‰์„ ์ค‘๋‹จํ•œ ํ›„ while๋ฌธ์„ ๋น ์ ธ๋‚˜์˜ด
  • while๋ฌธ ์กฐ๊ฑด์‹์ด ์ฐธ์ด๋ฉด ๋ฌดํ•œ ๋ฐ˜๋ณต๋จ
while(true) {
	...
}

do-while๋ฌธ

{} ์•ˆ์˜ ๋ฌธ์žฅ์„ ๋ฌด์กฐ๊ฑด ํ•œ ๋ฒˆ ์ˆ˜ํ–‰ํ•œ ํ›„์— ์กฐ๊ฑด์‹์„ ๊ฒ€์‚ฌํ•จ. ์ฆ‰ ์กฐ๊ฑด์ด ๋งŒ์กฑํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋งˆ์ง€๋ง‰์— ๊ฒ€์‚ฌํ•จ

do {
   ์ˆ˜ํ–‰๋ฌธ1;
    ...
} while(์กฐ๊ฑด์‹);
์ˆ˜ํ–‰๋ฌธ2;
...

for๋ฌธ

for(์ดˆ๊ธฐํ™”์‹;์กฐ๊ฑด์‹;์ฆ๊ฐ์‹){
	์ˆ˜ํ–‰๋ฌธ1;
}

int num;
for(num = 1; num <= 5; num++){
	System.out.println(num);
}

 

for๋ฌธ์„ ๊ตฌ์„ฑํ•˜๋Š” ์š”์†Œ๋Š” ์ฝ”๋“œ๊ฐ€ ์ค‘๋ณต๋˜๊ฑฐ๋‚˜ ๋…ผ๋ฆฌ ํ๋ฆ„์ƒ ์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์—†์„ ๋•Œ ์ƒ๋žต ๊ฐ€๋Šฅํ•จ

// ์ดˆ๊ธฐํ™”์‹ ์ƒ๋žต
int i = 0;
for(; i < 5; i++){
 ...
}

// ์กฐ๊ฑด์‹ ์ƒ๋žต
for(i = 0; ; i++) {
 sum+=i;
 if(sum > 200) break;
}

// ์ฆ๊ฐ์‹ ์ƒ๋žต
for(i = 0; i < 5; ) {
	...
    i = (++i) % 10;
}

// ๋ฌดํ•œ ๋ฐ˜๋ณต
for( ; ; ) {
	...
}

continue๋ฌธ

๋ฐ˜๋ณต๋ฌธ๊ณผ ํ•จ๊ป˜ ์“ฐ์ด๋ฉฐ, ๋ฐ˜๋ณต๋ฌธ ์•ˆ์—์„œ continue๋ฌธ์„ ๋งŒ๋‚˜๋ฉด ์ดํ›„์˜ ๋ฌธ์žฅ์€ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š๊ณ  for๋ฌธ์˜ ์ฒ˜์Œ์œผ๋กœ ๋Œ์•„๊ฐ€ ์ฆ๊ฐ์‹์„ ์ˆ˜ํ–‰ํ•จ

int total = 0;
int num;

for(num = 1; num <= 100; num++) { // 100๊นŒ์ง€ ๋ฐ˜๋ณต
	if(num%2 == 0) continue; // num ๊ฐ’์ด ์ง์ˆ˜์ธ ๊ฒฝ์šฐ ์ดํ›„ ์ˆ˜ํ–‰ ์ƒ๋žตํ•˜๊ณ  num++ ์ˆ˜ํ–‰
    total += num; // num ๊ฐ’์ด ํ™€์ˆ˜์ธ ๊ฒฝ์šฐ์—๋งŒ ์ˆ˜ํ–‰
}

break๋ฌธ

๋ฐ˜๋ณต๋ฌธ์—์„œ break๋ฌธ์„ ์‚ฌ์šฉํ•˜๋ฉด ๊ทธ ์ง€์ ์—์„œ ๋” ์ด์ƒ ์ˆ˜ํ–‰๋ฌธ์„ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š๊ณ  ๋ฐ˜๋ณต๋ฌธ์„ ๋น ์ ธ๋‚˜์˜ด

int sum = 0;
int num = 0;

for(num = 0; ; num++) {
	sum += num;
    if(sum >= 100) break; // sum์ด 100๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™์„ ๋•Œ ๋ฐ˜๋ณต๋ฌธ ์ค‘๋‹จ
}