5.์ฐธ์กฐ(ํผ๊ณต์)
5-1 ์ฐธ์กฐ ํ์ ๊ณผ ์ฐธ์กฐ ๋ณ์
๊ธฐ๋ณธ ํ์ : byte, short, char, int, long, float, double, boolean ํ์ ์ ๋งํ๋ฉฐ ์ด๋ค ํ์ ์ ๋ณ์์๋ ๊ฐ ์์ฒด๊ฐ ์ ์ฅ๋๋ค.
์ฐธ์กฐ ํ์ : ๊ธฐ๋ณธ ํ์ ์ ์ ์ธํ ๋ฐฐ์ด, ์ด๊ฑฐ, ํด๋์ค, ์ธํฐํ์ด์ค ๋ฑ์ ๋งํ๋ค. ์ฐธ์กฐ ํ์ ์ ๋ณ์์๋ ๊ฐ์ฒด์ ๋ฒ์ง๊ฐ ์ ์ฅ๋๋ค. ๋ฒ์ง๋ก ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ๋ค๋ ์๋ฏธ์์ ์ฐธ์กฐ ํ์ ์ด๋ผ๊ณ ํ๋ค.
๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ ์์ญ: JVM์ ์ด์์ฒด์ ์์ ํ ๋น๋ฐ์ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ๋ฉ์๋ ์์ญ, ํ ์์ญ, ์คํ ์์ญ์ผ๋ก ๊ตฌ๋ถํด์ ์ฌ์ฉํ๋ค. ๋ฉ์๋ ์์ญ์๋ ์ ์ ํ๋, ์์, ๋ฉ์๋ ์ฝ๋, ์์ฑ์ ์ฝ๋๊ฐ ์์นํ๋ฉฐ, ํ ์์ญ์๋ ๊ฐ์ฒด๊ฐ ์์ฑ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์คํ ์์ญ์๋ ๋ณ์๊ฐ ์์ฑ๋๋ค.
๋ฒ์ง ๋น๊ต : ๋น๊ต ์ฐ์ฐ์ (=, !=) ๊ฐ ๊ธฐ๋ณธ ํ์ ์์ ์ฌ์ฉ๋๋ฉด ๊ฐ์ ๋น๊ตํ์ง๋ง, ์ฐธ์กฐ ํ์ ์์ ์ฌ์ฉ๋๋ฉด ๋ฒ์ง๋ฅผ ๋น๊ตํ๋ค. ==์ด ture๊ฐ ๋์ค๋ฉด ๊ฐ์ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ๋ค๋ ๋ป์ด๊ณ false๊ฐ ๋์ค๋ฉด ๋ค๋ฅธ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ๋ค๋ ๋ป. ๊ฐ์ฒด ์์ ๋น๊ตํ๋ค๋ฉด A.equals(B)
null : ์ฐธ์กฐ ํ์ ๋ณ์๋ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ์ง ์๋๋ค๋ ๋ป์ผ๋ก nulll ๊ฐ์ ๊ฐ์ง ์ ์์ต๋๋ค. ๋ง์ฝ null์ธ ์ฐธ์กฐ ๋ณ์๋ฅผ ํตํด ์์ง๋ ์์ ๊ฐ์ฒด์ ํ๋๋ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด NullPointerException์ด ๋ฐ์ํ๋ค.
5-2 ๋ฐฐ์ด
๋ฐฐ์ด : ๊ฐ์ ํ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ฐ์๋ ๊ณต๊ฐ์ ๋์ดํ๊ณ , ๊ฐ ๋ฐ์ดํฐ์ ์ธ๋ฑ์ค๋ฅผ ๋ถ์ฌํด๋์ ์๋ฃ๊ตฌ์กฐ์ด๋ค.
์ธ๋ฑ์ค : ๋ฐฐ์ด ํญ๋ชฉ์ ๋ถ์ธ ๋ฒํธ๋ฅผ ๋งํฉ๋๋ค. 0๋ฒ๋ถํฐ ์์ํ์ฌ 0~(๋ฐฐ์ด๊ธธ์ด - 1)๊น์ง ๋ฒ์๋ฅผ ๊ฐ์ต๋๋ค.
๋ฐฐ์ด ์ ์ธ : ๋ณ์ ์ ์ธ๊ณผ ๋น์ทํ๋ฐ, ๋๊ดํธ๊ฐ ์ถ๊ฐ๋์ด ํ์ [] ๋ณ์; ํํ๋ก ์ ์ธ๋๋ค. int[] scores๋ int ๋ฐฐ์ด์ ์ ์ธํ๋ค. ์ฌ๊ธฐ์ scores๋ ๋ฐฐ์ด ๋ณ์๋ผ๊ณ ๋ธ๋ฅธ๋ค.
๋ฐฐ์ด ์์ฑ: ๋ฐฐ์ด์ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ ๊ฐ์ง์ด๋ค. ํ๋๋ { ๊ฐ1, ๊ฐ2, ๊ฐ3 ... }์ฒ๋ผ ๊ฐ ๋ชฉ๋ก์ผ๋ก ์์ฑํ๋ ๋ฐฉ๋ฒ์ด๊ณ , ๋ค๋ฅธ ํ๋๋ new ํ์ [๊ธธ์ด1][๊ธธ์ด2]; ์ด๋ค. ๋ณ์.length๋ 1์ฐจ์ ๋ฐฐ์ด์ ๊ธธ์ด1์ด ๋๊ณ , ๋ณ์[์ธ๋ฑ์ค].length๋ ํด๋น ํญ๋ชฉ์ด ์ฐธ์กฐํ๋ 2์ฐจ์ ๋ฐฐ์ด์ ๊ธธ์ด2๋ฅผ ๋งํ๋ค.
ํฅ์๋ for๋ฌธ : for(ํ์ ๋ณ์ : ๋ฐฐ์ด) {} ๋ฅผ ๋งํ๋ค. ํฅ์๋ for๋ฌธ์ ๋ฐ๋ณต ์คํ์ ํ๊ธฐ ์ํด ๋ฃจํ ์นด์ดํฐ ๋ณ์์ ์ฆ๊ฐ์์ ์ฌ์ฉํ์ง ์๋๋ค. ๋ฐฐ์ด์ ํญ๋ชฉ ๊ฐ์๋งํผ ๋ฐ๋ณตํ๊ณ , ์๋์ ์ผ๋ก for๋ฌธ์ ๋น ์ ธ๋๊ฐ๋ค. ๋ฐ๋ณตํ ๋๋ง๋ค ๋ณ์์๋ ๋ฐฐ์ด์์ ๊ฐ์ ธ์จ ํญ๋ชฉ์ด ์ ์ฅ๋๋ค.
+
์ ์ ํ์ ๋ฐฐ์ด ํญ๋ชฉ์ ๊ธฐ๋ณธ ์ด๊ธฐ๊ฐ์ 0์ด๋ค.
์ค์ ํ์ ๋ฐฐ์ด ํญ๋ชฉ์ ๊ธฐ๋ณธ ์ด๊ธฐ๊ฐ์ 0.0F ๋๋ 0.0์ด๋ค.
์ฐธ์กฐ ํ์ ๋ฐฐ์ด ํญ๋ชฉ์ ๊ธฐ๋ณธ ์ด๊ธฐ๊ฐ์ null์ด๋ค.
5-3 ์ด๊ฑฐ ํ์
์ด๊ฑฐ ํ์ : ์ด๊ฑฐ ํ์ ์ ๋ช ๊ฐ์ง๋ก ์ ํ๋ ์์๋ฅผ ๊ฐ์ง๋ ํ์ ์ ๋งํ๋ค.
์ด๊ฑฐ ํ์ ์ ์ธ: enum ํ์ { ์์, ์์, ... } ํํ๋ก ์ด๊ฑฐ ํ์ ์ ์ ์ธํฉ๋๋ค. ์๋ฅผ ๋ค์ด enum Week {MONDAY, ..., SUNDAY} ํํ๋ฅผ ๊ฐ์ง๋ค.
์ด๊ฑฐ ์์: ์ด๊ฑฐ ํ์ ์ ์ธ ๋ ์ฃผ์ด์ง ์์๋ฅผ ๋งํ๋ฉฐ ํ์ .์์ ํํ๋ก ์ฌ์ฉํ๋ค. ์๋ฅผ ๋ค์ด, Week ์ด๊ฑฐ ํ์ ์ ์์ MONDAY๋ Week.MONDAY๋ก ์ฌ์ฉํ๋ค.
์ด๊ฑฐ ํ์ ๋ณ์: ์ด๊ฑฐ ํ์ ์ผ๋ก ์ ์ธ๋ ๋ณ์๋ฅผ ๋งํ๋ค. ์ด๊ฑฐ ํ์ ๋ณ์์๋ ์ด๊ฑฐ ์์ ์ค ํ๋๊ฐ ๋์ ๋๋ค. ์๋ฅผ ๋ค๋ฉด Week today = new Week.FRIDAY; ์์ today๊ฐ ์ด๊ฑฐ ํ์ ๋ณ์์ด๋ค.
+
์ด๊ฑฐ ํ์ ์ ํ์ ๋ ๊ฐ์ ๊ฐ๋ ํ์ ์ด๋ค.
์ด๊ฑฐ ํ์ ๋ณ์์๋ ์ด๊ฑฐ ํ์ ์ ์ ์๋ ์์๋ฅผ ๋ํฉํ ์ ์๋ค.
์ด๊ฑฐ ํ์ ๋ณ์์ null์ ๋์ ํ ์ ์๋ค.
์ด๊ฑฐ ์์๋ ๊ด๋ก์ ์ผ๋ก ๋๋ฌธ์๋ก ์์ฑํ๋ค.
'๊ฐ๋ฐ ์ง์, ์คํฌ๋ฆฝํธ > Java ๋ฌธ๋ฒ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
6-2ํด๋์ค(ํ๋) (0) | 2023.09.29 |
---|---|
6.ํด๋์ค(ํผ๊ณต์)[6-1] (0) | 2023.09.27 |
4.๋ฐ๋ณต๋ฌธ๊ณผ ์กฐ๊ฑด๋ฌธ(ํผ๊ณต์) (0) | 2023.09.20 |
3.์ฐ์ฐ์(ํผ๊ณต์) (0) | 2023.09.16 |
[๋ณ์์ ํ์ 02_2 ๊ธฐ๋ณธ ํ์ ] (0) | 2023.09.07 |
๋๊ธ