SWITCH
switch
switch (์กฐ๊ฑด์) {
case ๊ฐ1:
์กฐ๊ฑด์์ ๊ฒฐ๊ณผ๊ฐ ๊ฐ1๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์ํํ ๋ฌธ์ฅ;
break;
case ๊ฐ2:
์กฐ๊ฑด์์ ๊ฒฐ๊ณผ๊ฐ ๊ฐ2์ ๊ฐ์ ๊ฒฝ์ฐ ์ํํ ๋ฌธ์ฅ;
break;
....
default:
์กฐ๊ฑด์์ ๊ฒฐ๊ณผ์ ์ผ์นํ๋ case ๋ฌธ์ด ์์ ๋ ์ํํ ๋ฌธ์ฅ;
}
์ฒ๋ฆฌํด์ผ ํ๋ ๊ฒฝ์ฐ์ ์๊ฐ ๋ง์ ๋ ์ ์ฉํ ์กฐ๊ฑด๋ฌธ์ ๋๋ค.
break; ๋ฅผ ์์ฑํด ์ฃผ์ง ์์ผ๋ฉด switch ๋ฌธ ๋๊น์ง ์คํ๋ฉ๋๋ค.
default ๋ฌธ์ ์๋ต ๊ฐ๋ฅํฉ๋๋ค.
if ์กฐ๊ฑด๋ฌธ๊ณผ ๋น๊ตํด๋ณด๋ฉด if ๋ ์กฐ๊ฑด์ ๊ฒฐ๊ณผ์ true/false ๋ง ๊ฐ๋ฅํ๊ณ switch ๋ ์ ์๋ ๋ฌธ์์ด ๋ง ๊ฐ๋ฅํฉ๋๋ค.
์คํ ํ๋ฆ ํ์ธํ๊ธฐ
์กฐ๊ฑด์์ ๊ณ์ฐํ๋ค.
์กฐ๊ฑด์์ ๊ฒฐ๊ณผ์ ์ผ์นํ๋ case ๋ฌธ์ผ๋ก ์ด๋ํ๋ค.
ํด๋น case ๋ฌธ์ ๋ฌธ์ฅ๋ค์ ์ํํ๋ค.
break; ๋ฅผ ๋ง๋๊ฑฐ๋ switch ๋ฌธ์ด ๋๋๋ฉด switch ๋ฌธ ์ ์ฒด๋ฅผ ๋น ์ ธ๋๊ฐ๋ค.
switch ๋ฌธ์ ์ ์ฝ์กฐ๊ฑด
switch ๋ฌธ์ ์กฐ๊ฑด์ ๊ฒฐ๊ณผ๋ ์ ์ ๋๋ ๋ฌธ์์ด ์ด์ด์ผ ํฉ๋๋ค.
case ๋ฌธ์ ๊ฐ์ ์ ์ ์์(๋ฌธ์ ํฌํจ), ๋ฌธ์์ด ๋ง ๊ฐ๋ฅํ๋ฉฐ, ์ค๋ณต๋์ง ์์์ผ ํ๋ค.
int num, result;
final int ONE = 1;
switch (result) {
case '1': // OK. ๋ฌธ์ ๋ฆฌํฐ๋ด(์ ์ 49์ ๋์ผ)
case ONE: // OK. ์ ์ ์์
case "YES" // OK. ๋ฌธ์์ด ๋ฆฌํฐ๋ด
case num: // Error. ๋ณ์๋ ๋ถ๊ฐ๋ฅ
case 1.0: // Error. ์ค์๋ ๋ถ๊ฐ๋ฅ
}
์๋ ์์ ์ฝ๋๋ก ํ์ตํด ๋ณด๊ฒ ์ต๋๋ค.
Ref. Java์ ์ ์ ๊ธฐ์ดํธ Chapter4(9, 10. 11)
Ref. switch
Last updated