2022. 4. 5. 22:01ใJAVA/์๋ฐ์ ์ ์
1๏ธโฃ ์กฐ๊ฑด๋ฌธ
์กฐ๊ฑด๋ฌธ์ ์กฐ๊ฑด์๊ณผ ๋ฌธ์ฅ์ ํฌํจํ๋ ๋ธ๋ญ{}์ผ๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ, ์กฐ๊ฑด์์ ์ฐ์ฐ๊ฒฐ๊ณผ์ ๋ฐ๋ผ ์คํํ ๋ฌธ์ฅ์ด ๋ฌ๋ผ์ ธ์ ํ๋ก๊ทธ๋จ์ ์คํํ๋ฆ์ ๋ณ๊ฒฝํ ์ ์๋ค.
์ด๋ ๊ฒ ํ๋ก๊ทธ๋จ์ ํ๋ฆ์ ๋ฐ๊พผ๋ ์ญํ ์ ํ๋ ๋ฌธ์ฅ๋ค์ ์ ์ด๋ฌธ์ด๋ผ๊ณ ํ๋ค.
์กฐ๊ฑด๋ฌธ์ if, switch๋ฌธ ๋๊ฐ์ง๊ฐ ์์ผ๋ฉฐ ์ฃผ๋ก if๋ฌธ์ด ๋ง์ด ์ฌ์ฉ๋๋ค.
2๏ธโฃ if๋ฌธ
if๋ฌธ์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ์กฐ๊ฑด๋ฌธ์ด๋ฉฐ ๋ค์๊ณผ ๊ฐ์ด '์กฐ๊ฑด์'๊ณผ '๊ดํธ{}' ๋ก ์ด๋ฃจ์ด์ ธ์๋ค.
๋ง์ผ(if) ์กฐ๊ฑด์์ด ์ฐธ true์ด๋ฉด ๊ดํธ{} ์์ ๋ฌธ์ฅ๋ค์ ์ํํ๋ผ.
if(์กฐ๊ฑด์) {
// ์กฐ๊ฑด์์ด ์ฐธ์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค.
}
๋ธ๋ญ
๊ดํธ{}๋ฅผ ์ด์ฉํด์ ์ฌ๋ฌ ๋ฌธ์ฅ์ ํ๋์ ๋จ์๋ก ๋ฌถ์ ์ ์๋๋ฐ, ์ด๊ฒ์ ๋ธ๋ญ์ด๋ผ๊ณ ํ๋ค.
๋ธ๋ญ์์๋ ๋ณดํต ์ฌ๋ฌ ๋ฌธ์ฅ์ ๋ฃ๋๋ฐ ํ ๋ฌธ์ฅ๋ง ๋ฃ๊ฑฐ๋ ์๋ฌด๋ฐ ๋ฌธ์ฅ๋ ๋ฃ์ง ์์ ์ ์๋ค.
๋ง์ผ ๋ธ๋ญ ๋ด์ ๋ฌธ์ฅ์ด ํ๋๋ฟ ์ผ ๋๋ ๊ดํธ๋ฅผ ์๋ตํ ์๋ ์๋ค.
3๏ธโฃ if-else ๋ฌธ
eles๋ ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ๊ฐ ์ฐธ์ด ์๋ ๋, ์ฆ ๊ฑฐ์ง์ผ ๋ else ๋ธ๋ญ์ ๋ฌธ์ฅ์ ์ํํ๋ค.
if (์กฐ๊ฑด์) {
// ์กฐ๊ฑด์์ด ์ฐธ(true) ์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค.
} else {
// ์กฐ๊ฑด์์ด ๊ฑฐ์ง(false) ์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค.
}
-> ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ์ ๋ฐ๋ผ ์ด ๋๊ฐ์ ๋ธ๋ญ ์ค ์ด๋ ํ ๋ธ๋ญ์ ๋ด์ฉ์ด ์ํ๋๊ณ ์ ์ฒด if๋ฌธ์ ๋ฒ์ด๋๊ฒ ๋๋ค.
4๏ธโฃ if-else if ๋ฌธ
์ฒ๋ฆฌํด์ผํ ๊ฒฝ์ฐ์ ์๊ฐ ์ ์ด์์ธ ๊ฒฝ์ฐ์๋ if else if ๋ฌธ์ ์ฌ์ฉํ๋ค.
if (์กฐ๊ฑด์1) {
// ์กฐ๊ฑด์1์ด ์ฐธ(true) ์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค.
} else if (์กฐ๊ฑด์2) {
// ์กฐ๊ฑด์2์ ์ฐ์ฐ๊ฒฐ๊ณผ๊ฐ ์ฐธ(true) ์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค.
} else if (์กฐ๊ฑด์3) {
// ์กฐ๊ฑด์3์ ์ฐ์ฐ๊ฒฐ๊ณผ๊ฐ ์ฐธ(true) ์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค.
} else {
// ์์ ์ด๋ ์กฐ๊ฑด์๋ ๋ง์กฑํ์ง ์์ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค.
}
-> ์ฒซ๋ฒ์งธ ์กฐ๊ฑด์๋ถํฐ ์์๋๋ก ํ๊ฐํด์ ๊ฒฐ๊ณผ๊ฐ ์ฐธ์ธ ์กฐ๊ฑด์์ ๋ง๋๋ฉด, ํด๋น ๋ธ๋ญ{}๋ง ์ํํ๊ณ if- eles if ๋ฌธ ์ ์ฒด๋ฅผ ๋ฒ์ด๋๋ค.
๋ง์ผ ๊ฒฐ๊ณผ๊ฐ ์ฐธ์ธ ์กฐ๊ฑด์์ด ํ๋๋ ์์ผ๋ฉด, ๋ง์ง๋ง์ ์๋ else ๋ธ๋ญ์ ๋ฌธ์ฅ๋ค์ด ์ํ๋๋ค.
๊ทธ๋ฆฌ๊ณ else ๋ธ๋ญ์ ์๋ต์ด ๊ฐ๋ฅํ๋ค.
5๏ธโฃ ์ค์ฒฉ if ๋ฌธ
if ๋ฌธ์ ๋ธ๋ญ ๋ด์ ๋ ๋ค๋ฅธ if๋ฌธ์ ํฌํจ์ํค๋ ๊ฒ์ ์ค์ฒฉ if๋ฌธ์ด๋ผ๊ณ ํ๋ค.
if(์กฐ๊ฑด์1) {
if (์กฐ๊ฑด์2) {
// ์กฐ๊ฑด์1๊ณผ ์กฐ๊ฑด์2๊ฐ ๋ชจ๋ true์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค
} else {
// ์กฐ๊ฑด์1์ด true์ด๊ณ , ์กฐ๊ฑด์2๊ฐ false ์ผ ๋ ์ํ๋๋ ๋ฌธ์ฅ๋ค
}
} else {
// ์กฐ๊ฑด์1์ด false ์ผ ๋ ์ํ๋๋ ๋ฌธ์ฅ๋ค
}
์ค์ฒฉ if ๋ฌธ์์ ๊ดํธ ์๋ต์ ์กฐ์ฌํด์ผํ๋ค.
๊ดํธ๊ฐ ์๋ต๋์์ ๋ else๋ธ๋ญ์ ๊ฐ๊น์ด if๋ฌธ์ ์ํ ๊ฒ์ผ๋ก ๊ฐ์ฃผํ๊ธฐ ๋๋ฌธ์ ์ค์ ๋ก๋ ์ค๋ฅธ์ชฝ๊ณผ ๊ฐ์ด ์์ชฝ if๋ฌธ์ else ๋ธ๋ญ์ด ๋์ด๋ฒ๋ฆฐ๋ค.
๋ฐ๋ผ์ ๊ดํธ{} ๋ฅผ ๋ฃ์ด์ if๋ธ๋ญ๊ณผ else ๋ธ๋ญ์ ๊ด๊ณ๋ฅผ ํ์คํ๊ฒ ํด์ฃผ๋๊ฒ์ด ์ข๋ค.
6๏ธโฃ switch ๋ฌธ
if๋ฌธ์ ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ๊ฐ ์ฐธ, ๊ฑฐ์ง ๋๊ฐ์ง ๋ฐ์ ์๊ธฐ ๋๋ฌธ์ ๊ฒฝ์ฐ์ ์๊ฐ ๋ง์์ง์๋ก else if ๋ฌธ์ ๊ณ์ ์ถ๊ฐํด์ผํด์ ์กฐ๊ฑด์์ด ๋ง์์ ธ์ ๋ณต์กํด์ง๊ณ , ์ฌ๋ฌ๊ฐ์ ์กฐ๊ฑด์์ ๊ณ์ฐํด์ผํ๊ธฐ ๋๋ฌธ์ ์ฒ๋ฆฌ์๊ฐ๋ ๋ง์ด ๊ฑธ๋ฆฐ๋ค.
์ด๋ฌํ if๋ฌธ๊ณผ ๋ฌ๋ฆฌ switch๋ฌธ์ ๋จ ํ๋์ ์กฐ๊ฑด์์ผ๋ก ๋ง์ ๊ฒฝ์ฐ์ ์๋ฅผ ์ฒ๋ฆฌํ ์ ์๊ณ , ํํ๋ ๊ฐ๊ฒฐํ๊ธฐ ๋๋ฌธ์ ์์๋ณด๊ธฐ ์ฝ๋ค.
switch (์กฐ๊ฑด์) {
case ๊ฐ1 :
// ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ๊ฐ ๊ฐ 1๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์ํ๋ ๋ฌธ์ฅ๋ค
break;
case ๊ฐ2:
// ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ๊ฐ ๊ฐ 2์ ๊ฐ์ ๊ฒฝ์ฐ ์ํ๋ ๋ฌธ์ฅ๋ค
break;
default:
// ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ์ ์ผ์นํ๋ case๋ฌธ์ด ์์ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค
}
๋ง์ผ ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ์ ์ผ์นํ๋ case๋ฌธ์ด ํ๋๋ ์๋ ๊ฒฝ์ฐ์๋ default๋ฌธ์ผ๋ก ์ด๋ํ๋ค.
switch ๋ฌธ์์ break๋ฌธ์ ๊ฐ case๋ฌธ์ ์์ญ์ ๊ตฌ๋ถํ๋ ์ญํ ์ ํ๋๋ฐ, ๋ง์ผ break๋ฌธ์ ์๋ตํ๋ฉด case๋ฌธ ์ฌ์ด์ ๊ตฌ๋ถ์ด ์์ด์ง๋ฏ๋ก ๋ค๋ฅธ break๋ฌธ์ ๋ง๋๊ฑฐ๋ switch๋ฌธ ๋ธ๋ญ{}์ ๋์ ๋ง๋ ๋ ๊น์ง ๋์ค๋ ๋ชจ๋ ๋ฌธ์ฅ๋ค์ ์ํํ๋ค.
๊ทธ๋์ ๊ฐ case๋ฌธ ๋ง์ง๋ง์ break๋ฌธ์ ๋นผ๋จน์ผ๋ฉด ์๋๋ค!
7๏ธโฃ switch๋ฌธ์ ์ ์ฝ์กฐ๊ฑด
switch๋ฌธ์ ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ๊ฐ์ด ๋ฐ๋์ ์ ์์ด์ด์ผ ํ๋ฉฐ, ์ด ๊ฐ๊ณผ ์ผ์นํ๋ case๋ฌธ์ผ๋ก ์ด๋ํ๊ธฐ ๋๋ฌธ์ case๋ฌธ์ ๊ฐ ์ญ์ ์ ์์ด์ด์ผ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ์ค๋ณต๋์ง ์์์ผ ํ๋ค. -> ๊ฐ์ ๊ฐ์ case๋ฌธ์ด ์ฌ๋ฌ๊ฐ์ด๋ฉด ์ด๋๋ก ์ด๋ํด์ผํ ์ง ์ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
switch๋ฌธ์ ์ ์ฝ์กฐ๊ฑด
1. switch๋ฌธ์ ์กฐ๊ฑด์ ๊ฒฐ๊ณผ๋ ์ ์ ๋๋ ๋ฌธ์์ด์ด์ด์ผํ๋ค.
2. case๋ฌธ์ ๊ฐ์ ์ ์ ์์๋ง ๊ฐ๋ฅํ๋ฉฐ, ์ค๋ณต๋์ง ์์์ผํ๋ค.
8๏ธโฃ ๋์ ๊ตฌํ๊ธฐ Math.random()
๋์ (์์์ ์)๋ฅผ ๊ตฌํ๊ธฐ ์ํด์๋ Math.random()์ ์ฌ์ฉํด์ผ ํ๋๋ฐ, ์ด ๋ฉ์๋๋ 0.0๊ณผ 1.0 ์ฌ์ด์ ๋ฒ์์ ์ํ๋ ํ๋์ double ๊ฐ์ ๋ฐํํ๋ค.
0.0์ ๋ฒ์์ ํฌํจํ๊ณ 1.0์ ๋ฒ์์ ํฌํจ๋์ง ์๋๋ค.
1~ 3 ๊ฐ์ ๊ตฌํ๊ณ ์ถ๋ค๋ฉด
(int) (Math.random * 3) + 1 ํด์ฃผ๋ฉด ๋๋ค.
9๏ธโฃ switch๋ฌธ์ ์ค์ฒฉ
์ด๋ ์ค์ฒฉ switch๋ฌธ์์ break๋ฌธ์ ๋นผ๋จน์ง ์๊ฒ ์กฐ์ฌ!!
'JAVA > ์๋ฐ์ ์ ์' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JAVA] 8. ๋ฐฐ์ด (0) | 2022.04.08 |
---|---|
[JAVA] 7. ๋ฐ๋ณต๋ฌธ (0) | 2022.04.06 |
[JAVA] 4. ์ฐ์ฐ์operator (0) | 2022.04.04 |
[JAVA] 3. ์ง๋ฒ (0) | 2022.04.01 |
[JAVA] 2. ๋ณ์ (Variable) (0) | 2022.03.31 |