[TIL] 220403 - java ๋ ํผ๋ฐ์ค ๋ณ์ ๋ฑ
๐ 2022 04 03 ์ผ ๐
โ๏ธ ์๋ฐ ์๋ฃ๊ตฌ์กฐ๋ฐ์๊ณ ๋ฆฌ์ฆ ๊ณผ์ 2 - ๋งํฌ๋๋ฆฌ์คํธ ๊ตฌํ
์ฑ์คํ
๋ฐฐ์ฐ๊ณ
์ตํ์
์๋ฐ ๊ธฐ์ด
โ ๋ ํผ๋ฐ์ค ๋ณ์
โ ์ฐธ๊ณ : https://gyubgyub.tistory.com/83
๋ณ์์ ์ข ๋ฅ - 1. ๊ธฐ๋ณธํ์ (primitive type) 2. ์ฐธ์กฐํ์ (reference type)
๊ธฐ๋ณธํ ๋ณ์๋ ์ฐ๋ฆฌ๊ฐ ํํ ์๋ int, double ๊ฐ์ ์ ์ฅํ๋ ๋ณ์์ด๊ณ ,
๋ ํผ๋ฐ์ค ๋ณ์(์ฐธ์กฐํ ๋ณ์)๋ ์ฃผ์๊ฐ์ ๊ฐ๋ฆฌํค๋ ๋ณ์์ด๋ค.
๋ ํผ๋ฐ์ค ๋ณ์๋?
ex. class Pizza { ~ }
class Main { Pizza p = new Pizza(); }
์ฌ๊ธฐ์ p๊ฐ ๋ ํผ๋ฐ์ค ๋ณ์, ์ฆ ์์ฑ๋ ์ธ์คํด์ค(๊ฐ์ฒด)์ ์ฃผ์๊ฐ๋ฅผ ๊ฐ๋ฆฌํค๋ ๋ณ์.
์ฆ, ๋ ํผ๋ฐ์ค ๋ณ์๋ ์ฐธ์กฐํ ๋ณ์๋ก, ์ค์ ๋ฐ์ดํฐ๊ฐ ์๋๋ผ ์ฃผ์๊ฐ์ ์ ์ฅํ๋ ๋ณ์์ด๋ค.
์ธ์คํด์ค ์์ฑ์ ์ฌ์ฉํ๋ ๋ ํผ๋ฐ์ค ๋ณ์๋, ์ค์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ณ์๊ฐ ์๋๋ผ,
๋จ์ง ์ธ์คํด์ค์ ์ฃผ์๊ฐ์ ๊ฐ๋ฆฌํค๋ ๋ณ์์ด๊ธฐ ๋๋ฌธ์,
์ธ์คํด์ค์ ํ๋์ ์ ๊ทผํ๊ฑฐ๋ ๋ฉ์๋๋ฅผ ํธ์ถํ๋ ค๋ฉด
< ๋ ํผ๋ฐ์ค๋ณ์.ํ๋/๋ฉ์๋ > ์์ผ๋ก "." (dot)์ ์ฌ์ฉํด์ผ ํ๋ค.
โ ๊ฐ์ฒด ๊ฐ์ ๋น๊ต์ฐ์ฐ ********* ๋ณด์ถฉ ํ์ ***********
โ ์ฐธ๊ณ : https://link2me.tistory.com/1690
'==', '!=' ๋ก ํ ์ ์๋ค.
์ฆ, primitive value์ฒ๋ผ ๊ฐ์ ๋น๊ตํ๋ ๊ฒ์ด ์๋๋ผ,
๊ฐ object์ ์ฃผ์๊ฐ์ด ๊ฐ์์ง๋ฅผ ๋น๊ตํ๋ ๊ฒ์ด๋ค.
๋ฐ๋ผ์, ๋ง์ฝ ํ๋์ ๊ฐ์ฒด ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ๋ ๋ ํผ๋ฐ์ค ๋ณ์๊ฐ ๊ฐ๋ฆฌํค๊ณ ์๋ค๋ฉด,
Integer a = Integer.ValueOf(10);
Integer b = Integer.ValueOf(10);
a == b --> true
๋ ๋ณ์๋ '==' ๋น๊ต ์ฐ์ฐ์ true๋ฅผ ๋ฐํํ๊ฒ ๋๋ค.
Integer a = new Integer(10);
Integer b = new Integer(10);
a == b --> false
๋จ, ๋ง์ฝ '.equals()'๋ฅผ ์ฐ๊ฒ ๋๋ฉด '==', '!='์ ๋ฌ๋ฆฌ
๊ฐ์ ๋น๊ตํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์
๋ ๊ฐ์ ๋ณ์๊ฐ ๋ค๋ฅธ ์ฃผ์๊ฐ์ ๊ฐ๋ฆฌํค๋๋ผ๋ ๊ทธ ๋ฐ์ดํฐ ๊ฐ์ด ๋์ผํ๋ค๋ฉด
.equals() ์ฌ์ฉ์ true๋ฅผ ๋ฐํํ๊ฒ ๋๋ค.
์๋์ ์์์๋ ๊ฐ์ฒด์ ์ฃผ์๊ฐ์ ๋ฌ๋ผ๋ (๋ค๋ฅธ ๊ฐ์ฒด) ๊ฐ์ฒด์ value๊ฐ ๊ฐ๋ค๋ฉด
Integer a = new Integer (10);
Integer b = new Integer (10);
a.equals(b) --> true
โ ๋ฌธ์์ด์ ์ ์๋ก ๋ณํํ๊ธฐ
int ์ ์ = Integer.parseInt(๋ฌธ์์ด);