1. if๋ฌธ
๐ก๋ง์ผ(if) ์กฐ๊ฑด์์ด ์ฐธ(true)์ด๋ฉด ๊ดํธ { } ์์ ๋ฌธ์ฅ๋ค์ ์ํํ๋ผ
if (์กฐ๊ฑด์) {
// ์กฐ๊ฑด์์ด ์ฐธ(true)์ผ ๋ ์ํ
}
์กฐ๊ฑด์
์ผ๋ฐ์ ์ผ๋ก ๋น๊ต ์ฐ์ฐ์์ ๋ ผ๋ฆฌ ์ฐ์ฐ์๋ก ๊ตฌ์ฑ๋๋ค.
90 <= x && x <= 100 // ์ ์ x๊ฐ 90์ด์ 100์ดํ์ผ ๋
str.equals("yes") // ๋ฌธ์์ด str์ ๋ด์ฉ์ด "yes"์ผ ๋ (๋์๋ฌธ์ ๊ตฌ๋ถ)
str.equalsIgnoreCase("yes") // ๋ฌธ์์ด str์ ๋ด์ฉ์ด "yes"์ผ ๋ (๋์๋ฌธ์ ๊ตฌ๋ถ X)
๋ธ๋ก()
์ฌ๋ฌ ๋ฌธ์ฅ์ ํ๋์ ๋จ์๋ก ๋ฌถ๋๋ค.
๋ธ๋ก ๋ด์ ๋ฌธ์ฅ์ด ํ๋๋ฟ์ธ ๊ฒฝ์ฐ ๊ดํธ{}๋ฅผ ์๋ตํ ์ ์์ง๋ง ๊ฐ๋ฅํ๋ฉด ์๋ตํ์ง ์๋ ๊ฒ์ด ์ข๋ค.
if(score > 60) System.out.println ("ํฉ๊ฒฉ์
๋๋ค.");
if(score > 60) {
System.out.println ("ํฉ๊ฒฉ์
๋๋ค.");
}
⇒ ์๋ก์ด ๋ฌธ์ฅ๋ค์ด ์ถ๊ฐ๋์์ ๋ ๊ดํธ{}๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ ์๊ธฐ ์ฝ๊ธฐ ๋๋ฌธ์ด๋ค.
2. if-else๋ฌธ
if (์กฐ๊ฑด์) {
// ์กฐ๊ฑด์์ด ์ฐธ(true)์ผ ๋ ์ํ
} else {
// ์กฐ๊ฑด์์ด ๊ฑฐ์ง(false)์ผ ๋ ์ํ
}
2๊ฐ์ if๋ฌธ vs if-else๋ฌธ
if (input == 0) {
...
}
if (input != 0) {
...
}
2๊ฐ์ ์กฐ๊ฑด์
if (input == 0) {
...
} else {
...
}
1๊ฐ์ ์กฐ๊ฑด์
⇒ if-else๋ฌธ์ด ๋ ํจ์จ์ ์ด๋ค!
๊ดํธ ์๋ต ๊ฐ๋ฅ
if(score > 60)
System.out.printin ("ํฉ๊ฒฉ์
๋๋ค.");
else
System.out.printin ("๋ถํฉ๊ฒฉ์
๋๋ค.");
3. if-else if๋ฌธ
if๏ผ์กฐ๊ฑด์1๏ผ {
// ์กฐ๊ฑด์1์ ์ฐ์ฐ๊ฒฐ๊ณผ๊ฐ ์ฐธ์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค .
} else if ๏ผ์กฐ๊ฑด์2๏ผ {
// ์กฐ๊ฑด์2์ ์ฐ์ฐ๊ฒฐ๊ณผ๊ฐ ์ฐธ์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค .
} else if ๏ผ์กฐ๊ฑด์3๏ผ { // ์ฌ๋ฌ ๊ฐ์ else if๋ฅผ์ฌ์ฉํ ์ ์๋ค.
// ์กฐ๊ฑด์3์ ์ฐ์ฐ๊ฒฐ๊ณผ๊ฐ ์ฐธ์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค .
} else { // ๋ง์ง๋ง์๋ ๋ณดํต else๋ธ๋ญ์ผ๋ก ๋๋๋ฉฐ, else๋ธ๋ญ์ ์๋ต๊ฐ๋ฅํ๋ค.
// ์์ ์ด๋ ์กฐ๊ฑด์๋ ๋ง์กฑํ์ง ์์ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค์ ์ ๋๋ค .
}
if-if๋ฌธ vs if-else-if-else๋ฌธ
if-else-if-else๋ฌธ
if (score >= 90) {
grade = 'A';
} else if (score >=80) {
grade = 'B';
} else if (score >=70) {
grade = 'C';
} else {
grade = 'D';
}
if-if๋ฌธ
if (score >= 90) {
grade = 'A';
}
if (80 <= score && score < 90) {
grade = 'B';
}
if (70 <= score && score < 80) {
grade = 'C';
}
if (score < 70) {
grade = 'D';
}
else-if๋ฌธ์ ์ฌ์ฉํ ๊ฒฝ์ฐ๋ ์์ ์กฐ๊ฑด์ ์ค๋ณต์ผ๋ก ํ์ธํ ํ์๊ฐ ์์ผ๋ฏ๋ก ์ฝ๋๊ฐ ํจ์ฌ ๊ฐ๋จํด์ง๋ค.
4. ์ค์ฒฉ if๋ฌธ
if (์กฐ๊ฑด์1) {
// ์กฐ๊ฑด์1์ ์ฐ์ฐ๊ฒฐ๊ณผ๊ฐ true์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค
if (์กฐ๊ฑด์2) {
// ์กฐ๊ฑด์1๊ณผ ์กฐ๊ฑด์2๊ฐ ๋ชจ๋ true์ผ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค
} else {
// ์กฐ๊ฑด์1์ด true์ด๊ณ , ์กฐ๊ฑด์2๊ฐ false์ผ ๋ ์ํ๋๋ ๋ฌธ์ฅ๋ค
}
} else {
// ์กฐ๊ฑด์1์ด false์ผ ๋ ์ํ๋๋ ๋ฌธ์ฅ๋ค
}
๊ดํธ์ ์ค์์ฑ
if (num >= 0)
if (num != 0)
sign = '+';
else
sign = '_';
if (num >= 0) {
if (num != 0) {
sign = '+';
} else {
sign = '-';
}
}
๊ดํธ๊ฐ ์๋ต๋๋ฉด else๋ธ๋ก์ ๊ฐ๊น์ด if๋ฌธ์ ์ํ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋๋ค.
์ฒซ ๋ฒ์งธ ์ฝ๋๋ฅผ ๋ณด๋ฉด else๋ฌธ์ด ๋ฐ๊นฅ if๋ฌธ๊ณผ ์ธํธ์ธ ๊ฒ์ฒ๋ผ ๋ณด์ด์ง๋ง ์ค์ ๋์์ ์ค๋ฅธ์ชฝ ์ฝ๋์ ๊ฐ๋ค.
5. switch๋ฌธ
switch๋ฌธ ์์
1. ์กฐ๊ฑด์์ ๊ณ์ฐ
2. ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ์ ์ผ์นํ๋ case๋ฌธ์ผ๋ก ์ด๋
3. ์ดํ์ ๋ฌธ์ฅ๋ค ์ํ
4. break๋ฌธ์ด๋ switch๋ฌธ์ ๋์ ๋ง๋๋ฉด switch๋ฌธ ์ ์ฒด๋ฅผ ๋น ์ ธ๋๊ฐ
switch (์กฐ๊ฑด์) ๏ฝ
case ๊ฐ1 :
// ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ๊ฐ ๊ฐ1๊ณผ ๊ฐ์ ๊ฒฝ์ฐ ์ํ๋ ๋ฌธ์ฅ๋ค
break;
case ๊ฐ2 :
// ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ๊ฐ ๊ฐ2์ ๊ฐ์ ๊ฒฝ์ฐ ์ํ๋ ๋ฌธ์ฅ๋ค
break; // switch๋ฌธ์ ๋ฒ์ด๋๋ค.
default :
// ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ์ ์ผ์นํ๋ case๋ฌธ์ด ์์ ๋ ์ํ๋ ๋ฌธ์ฅ๋ค
}
default๋ฌธ์ if๋ฌธ์ else๋ธ๋ก๊ณผ ๊ฐ์ ์ญํ
๋ณดํต default๋ฌธ์ ๋ง์ง๋ง์ ๋๋๋ค → ์ด ๊ฒฝ์ฐ break๋ฌธ ์๋ต ๊ฐ๋ฅ
๊ฐ case๋ฌธ์ break๋ฌธ ํ์!
๊ณ ์์ ์ผ๋ก break๋ฌธ์ ์๋ตํ๋ ๊ฒฝ์ฐ
switch (level) {
case 3 :
grantDelete(); // ์ญ์ ๊ถํ์ ์ค๋ค
case 2 :
grantWrite(); // ์ฐ๊ธฐ๊ถํ์ ์ค๋ค
case 1 :
grantRead(); // ์ฝ๊ธฐ๊ถํ์ ์ค๋ค
}
๋ก๊ทธ์ธํ ์ฌ์ฉ์์ ๋ฑ๊ธ(level)์ ์ฒดํฌํ์ฌ, ๋ฑ๊ธ์ ๋ง๋ ๊ถํ ๋ถ์ฌ
์ ์ผ ๋์ ๋ฑ๊ธ์ธ 3์ ๊ฐ์ง ์ฌ์ฉ์๋ ์ญ์ , ์ฐ๊ธฐ, ์ฝ๊ธฐ ๊ถํ์ ๋ชจ๋ ๊ฐ์ง๋ค.
switch๋ฌธ์ ์ ์ฝ ์กฐ๊ฑด
1. switch๋ฌธ์ ์กฐ๊ฑด์ ๊ฒฐ๊ณผ๋ ์ ์ ๋๋ ๋ฌธ์์ด์ด์ด์ผ ํ๋ค.
2. case๋ฌธ์ ๊ฐ์ ์ ์ ์์, ๋ฌธ์ ๋ฆฌํฐ๋ด, ๋ฌธ์ํ ๋ฆฌํฐ๋ด๋ง ๊ฐ๋ฅํ๋ฉฐ, ์ค๋ณต๋์ง ์์์ผ ํ๋ค.
int num, result;
final int ONE = 1;
switch(result) {
case '1': // ๋ฌธ์ ๋ฆฌํฐ๋ด(์ ์ ์์ 49์ ๋์ผ) OK
case ONE: // ์ ์ ์์ OK
case "YES": // ๋ฌธ์์ด ๋ฆฌํฐ๋ด OK
case num: // ๋ณ์ ๋ถ๊ฐ ERROR
case 1.0: // ์ค์ ๋ถ๊ฐ ERROR
...
}
์ฌ๋ฌ case๋ฌธ
case 3:
case 4:
case 5:
System.out.println ("์ ๋ต์
๋๋ค");
break;
case 3: case 4: case 5:
System.out.println ("์ ๋ต์
๋๋ค");
break;
case๋ฌธ์ ํ ์ค์ ํ๋์ฉ ์จ๋ ๋๊ณ ํ ์ค์ ๋ถ์ฌ์ ์จ๋ ๋๋ค.
โ Math.random() ์ฌ์ฉ๋ฒ
โ 1~3๊น์ง์ ๋๋คํ ์๋ฅผ ๊ตฌํ๊ณ ์ถ์ ๊ฒฝ์ฐ
Math.random()์ ๋ฒ์๋ 0.0 ≤ Math.random() < 1.0์ด๋ค.
1. ๊ฐ ๋ณ์ 3์ ๊ณฑํ๋ค.
0.0 * 3 ≤ Math.random() * 3 < 3.0
2. ๊ฐ ๋ณ์ intํ์ผ๋ก ์นํํ๋ค.
(int) 0.0 ≤ (int)(Math.random() * 3) < (int)3.0
-> 0 ≤ (int)(Math.random() * 3) < 3
3. ๊ฐ ๋ณ์ 1์ ๋ํ๋ค.
1 ≤ (int)(Math.random() * 3) + 1 < 4
switch๋ฌธ์ ์ค์ฒฉ
break๋ฌธ ๋นผ๋จน์ง ์๋๋ก ์ฃผ์!
switch(gender) {
case '1': case '3':
switch(gender) {
case '1':
System.out.println("๋น์ ์ 2000๋
์ด์ ์ ์ถ์ํ ๋จ์์
๋๋ค.");
break;
case '3':
System.out.println("๋น์ ์ 2000๋
์ดํ์ ์ถ์ํ ๋จ์์
๋๋ค.");
}
break; // ํด๋น break๋ฌธ์ ๋นผ๋จน์ง ์๋๋ก ์ฃผ์
case '2': case '4':
switch(gender) {
case '2':
System.out.println("๋น์ ์ 2000๋
์ด์ ์ ์ถ์ํ ์ฌ์์
๋๋ค.");
break;
case '4':
System.out.println("๋น์ ์ 2000๋
์ดํ์ ์ถ์ํ ์ฌ์์
๋๋ค.");
break;
}
break;
default:
System.out.println("์ ํจํ์ง ์์ ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ์
๋๋ค.");
}
Reference
์๋ฐ์ ์ ์ - ๋จ๊ถ ์ฑ
'๐ Book > ์๋ฐ์ ์ ์' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
5-1์ฅ ๋ฐฐ์ด (0) | 2023.03.29 |
---|---|
4-2์ฅ ๋ฐ๋ณต๋ฌธ (0) | 2023.03.29 |
3-6์ฅ ๊ธฐํ ์ฐ์ฐ์ (0) | 2023.03.14 |
3-5์ฅ ๋ ผ๋ฆฌ ์ฐ์ฐ์ (1) | 2023.03.14 |
3-4์ฅ ๋น๊ต ์ฐ์ฐ์ (0) | 2023.03.14 |
๋๊ธ