๐ก ๋๋ถ๋ถ์ ๋ด์ฉ์ ์ ํ ํฌ ์๋ฐ ์์ ์ฐธ๊ณ ํ์ฌ ์ ๋ฆฌํ์์ต๋๋ค.
enum
enum ์๋ฃํ์ ์๋ก ์ฐ๊ด์ด ์๋ ๊ฒ๋ค์ ์์ ์งํฉ์ ์ ์ํ ๋ ์ฌ์ฉํ๋ค.
์๋ฅผ ๋ค์ด, ์ด๋ ์นดํ์์ ํ๋งคํ๋ ์ปคํผ์ ์ข ๋ฅ๊ฐ ๋ค์๊ณผ ๊ฐ๋ค๊ณ ๊ฐ์ ํ๋ค.
- ์๋ฉ๋ฆฌ์นด๋ ธ
- ์นดํ๋ผ๋ผ
- ๋ฐํฌํฐ
์ด๋ฅผ enum์ผ๋ก ์์์งํฉ์ ๋ง๋ค ์ ์๋ค.
enum CoffeType {
AMERICANO,
CAFELATTE,
MILKTEA
};
์ด๋ ๊ฒ ์ ์ํ ์์์งํฉ์ ๋ค์๊ณผ ๊ฐ์ด ์ฌ์ฉํ ์ ์๋ค.
public class Sample {
enum CoffeeType {
AMERICANO,
CAFELATTE,
MILKTEA
};
public static void main(String[] args) {
System.out.println(CoffeeType.AMERICANO); // AMERICANO ์ถ๋ ฅ
}
}
enum์ ํ์์ฑ
๋ค์ ์๋ฅผ ํตํด enum์ ์ฌ์ฉํ๋ฉด ์ด๋ค ์ฅ์ ์ด ์๋์ง ์์๋ณธ๋ค.
์ข ๋ฅ๋ณ๋ก ํ๋งค๋ ์๋ฃ์ ๊ฐ์๋ฅผ ๋ฆฌํดํ๋ countSellCoffe ๋ฉ์๋๊ฐ ์๋ค.
int countSellCoffee(int type) {
... ์๋ต ...
}
์๋ฉ๋ฆฌ์นด๋ ธ์ ํ๋งค ๊ฐ์๋ฅผ ์๋ ค๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์ซ์ 1์ ๋๊ฒจ์ผ ํ๋ค. ๊ทธ๋ฐ๋ฐ, ์ด ๋ฐฉ์์ ์ซ์ 1์ด ์๋ฉ๋ฆฌ์นด๋ ธ๋ผ๊ณ ๊ธฐ์ตํ๋ฉฐ ์ฌ์ฉํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋ถํธํ๋ค.
int americano = countSellCoffee(1);
๊ทธ๋ฆฌ๊ณ ๋ค์๊ณผ ๊ฐ์ด ์ซ์๋ฅผ ์๋ชป ๊ธฐ์ ํ์ฌ ์ค๋ฅ๊ฐ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ด ์๋ค.
int result = countSellCoffee(99); // 99๋ผ๋ ์ปคํผ์ ์ข
๋ฅ๋ ์กด์ฌํ์ง ์์ผ๋ฏ๋ก ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค.
์ด๋, enum์ ์ฌ์ฉํ๋ฉด ๋๋ค.
enum CoffeeType {
AMERICANO,
CAFELATTE,
MILKTEA
};
int countSellCoffee(CoffeType type) {
... ์๋ต ...
}
public static void main(String[] args) {
int americano = countSellCoffee(CoffeType.AMERICANO); // ์๋ฉ๋ฆฌ์นด๋
ธ์ ํ๋งค๊ฐฏ์
}
์ซ์ 1์ ์ฌ์ฉํ์ ๋๋ณด๋ค ์ฝ๋๊ฐ ๋ช ํํด์ง๋ค. ๋ํ, countSellCoffee ๋ฉ์๋์๋ CoffeeType์ ์ ์๋ ์์๋ง ์ ๋ฌํ ์ ์๊ธฐ ๋๋ฌธ์ ์์์ ๋ณด์๋ 99์ฒ๋ผ ์๋ฑํ ์ซ์๋ฅผ ์ ๋ ฅํด ์๊ธฐ๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ง ์๋๋ค.
์ ๋ฆฌํ๋ฉด enum์ ๋ค์๊ณผ ๊ฐ์ ์ฅ์ ์ด ์๋ค.
- ๋งค์ง ๋๋ฒ๋ฅผ ์ฌ์ฉํ ๋๋ณด๋ค ์ฝ๋๊ฐ ๋ช ํํ๋ค.
- ์๋ชป๋ ๊ฐ์ ์ฌ์ฉํด ์๊ธธ ์ ์๋ ์ค๋ฅ๋ฅผ ๋ง์ ์ ์๋ค.
์ดํด๋ฅผ ๋์ธ ์ ์๋ ๋์ฑ ๊ตฌ์ฒด์ ์ธ ๋ด์ฉ์ ๋ด์ ๋งํฌ๋ฅผ ์ฒจ๋ถํ๋ค.
Java Enum ํ์ฉ๊ธฐ | ์ฐ์ํํ์ ๋ค ๊ธฐ์ ๋ธ๋ก๊ทธ
'Java > ๋ฌธ๋ฒ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Java ๋ฌธ๋ฒ ์ด์ ๋ฆฌ] final (1) | 2024.01.27 |
---|---|
[Java ๋ฌธ๋ฒ ์ด์ ๋ฆฌ] ๋ฌธ์์ด โ ์ซ์ ํ๋ณํ / int โ char (0) | 2024.01.27 |
[Java ๋ฌธ๋ฒ ์ด์ ๋ฆฌ] Math ํด๋์ค, Random ํด๋์ค (0) | 2024.01.27 |
[Java ๋ฌธ๋ฒ ์ด์ ๋ฆฌ] ๋ฐฐ์ด, ๋ฆฌ์คํธ, ๋งต, ์งํฉ (2) | 2024.01.24 |
[Java ๋ฌธ๋ฒ ์ด์ ๋ฆฌ] ์๋ฃํ (์ ์, ์ค์, ๋ถ์ธ, ๋ฌธ์, ๋ฌธ์์ด, StringBuffer) (1) | 2024.01.24 |