List <Object> list = new ArrayList <>();
์๋ฌด ์๊ฐ์์ด ์ ๊ตฌ์กฐ์ ํ์์ผ๋ก ํญ์ ๋ฆฌ์คํธ๋ฅผ ์์ฑํ์์๋๋ฐ, ๋ฌธ๋ List์ ArrayList์ ์ฐจ์ด๊ฐ ๋ญ์ง? ํ๊ณ ๊ถ๊ธํด์ก๋ค.
๊ทธ๋์ ๊ฒ์์ ํด๋ดค๋๋, ArrayList๋ class๊ณ , List๋ interface๋ค. interface๋ ๊ณตํต๋๋ ๋ฉ์๋๋ฅผ ์ถ์ถํด ๋์ ํด๋์ค๋ก ์๊ฐํ๋ฉด ๋๋ค.
๋ผ๋ ๊ธ์ ๋ณด์๋๋ฐ ๊ถ๊ธ์ฆ์ด ํด์๋์ง ์์๊ณ ๋ ๊ฒ์์ ํด๋ณด์๋ค.
- ArrayList <Object> list = new ArrayList <>();
- List <Object> list = new ArrayList <>();
์์ ๋ ์ฝ๋๋ ๋ชจ๋ ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํ์ง๋ง, List๋ฅผ ์ฌ์ฉํด ArrayList๋ฅผ ์์ฑํ๋ ๊ฒ์ ์ ์ฐ์ฑ์์ ํจ๊ณผ๋ฅผ ๋ณผ ์ ์๋ค๊ณ ํฉ๋๋ค.
๊ทธ๋ผ ์ด๋ค ์ ์ฐ์ฑ์์ ํจ๊ณผ๋ฅผ ๋ณธ๋ค๋ ๋ง์ผ๊น?
์ฌ๊ธฐ์ Generic(์ ๋๋ฆญ)์ด๋ผ๋ ๊ฐ๋ ์ด ๋ฑ์ฅํ๊ฒ ๋๋๋ฐ,
Generic์ ํด๋์ค ๋ด๋ถ์์ ์ง์ ํ๋ ๊ฒ์ด ์๋ ์ธ๋ถ์์ ์ฌ์ฉ์์ ์ํด ์ง์ ๋๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
์ฝ๊ฒ ๋งํ๋ฉด, ํน์ ํ์ ์ ๋ฏธ๋ฆฌ ์ง์ ํด์ฃผ๋ ๊ฒ์ด ์๋ ํ์์ ์ํด ์ง์ ํ ์ ์๋๋ก ํ๋ ์ผ๋ฐ(Generic)ํ์ ์ด๋ผ๊ณ ํ ์ ์์ต๋๋ค.
์ฌ๊ธฐ์ ์ ๊น ArrayList(๋ฐฐ์ด๋ฆฌ์คํธ)์ Array(๋ฐฐ์ด)์ ๊ฐ๋จ ์ฐจ์ด์ !!
ArrayList๋ ํ์ค Java์์ ์ ์ ๋ฐฐ์ด์ ๋ฌธ์ ๋ฅผ ๊ทน๋ณตํฉ๋๋ค. ์ฆ, ๋ฐฐ์ด์ ์ผ๋จ ๋ง๋ค์ด์ง๋ฉด ํฌ๊ธฐ๊ฐ ์ปค์ง ์ ์์ต๋๋ค.(ํฌ๊ธฐ๊ฐ ์ ํด์ ธ์์) ArrayList๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฐ์ด์ ๋ง๋ค๋ฉด ํ์ํ ๋ ํฌ๊ธฐ๊ฐ ์ปค์ง๊ณ ์์ ์ง ์์๋ ๋์ ๋ฐฐ์ด์ด ๋ง๋ค์ด์ง๋๋ค.
๊ทธ๋์ List์ ArrayList์ ์ฐจ์ด์ ์ ๋ํ ๊ฒฐ๋ก ์ ๋ญ์ผ?
์๋ฐ์ ๋คํ์ฑ์ ๊ด๋ จํ์ฌ ์๊ธฐํด๋ณด๋ฉด,
ํด๋์ค๋ฅผ ์์ฑํ ๋ ๋ํ ํ์ ์ผ๋ก ์์ฑํ๊ฒ ๋๋ฉด ์ ์ฌ๊ฐํ์ด ์๋
๋ค๋ฅธ ์ง์ฌ๊ฐํ, ์ผ๊ฐํ ๋ฑ ๋ํ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ ํด๋์ค์์ ์ฌ์ฉ๋ ์ ์์ต๋๋ค.
ํ์ง๋ง ์ ์ฌ๊ฐํ ํด๋์ค๋ก ์์ฑํ๊ฒ ๋๋ฉด ์ง์ฌ๊ฐํ, ์ผ๊ฐํ ๋ฑ ์์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ด ๊ฐ๋ ์ ๋ํ์ ๋น์ ํ์ฌ ํ์ด๋ณด๋ฉด,
List list = new ArrayList();
-> ๋ํ list = new ์ ์ฌ๊ฐํ();
ArrayList list = new ArrayList();
-> ์ ์ฌ๊ฐํ list = new ์ ์ฌ๊ฐํ();
์ ๋ฆฌํ์๋ฉด List๋ ์ธํฐํ์ด์ค์ด๊ณ arrayList๋ List์ ์์๋ ํด๋์ค๋ผ๊ณ ๋ณด๋ฉด ๋๋ค.
๋ฐ๋ผ์, โ arrayList๋ ๋จ๋ ์ผ๋ก ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ์ฌ์ฉ์ List ์ธํฐํ์ด์ค๋ฅผ ์์๋ฐ๊ณ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
https://yoon-dailylife.tistory.com/7๋ฅผ ์ฐธ๊ณ ํ์ฌ ์์ฑํ์์ต๋๋ค.
'Languages | Frameworks > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Java) 2์ฐจ์ ๋ฐฐ์ด ์ค๋ฆ์ฐจ์ ์ ๋ ฌ(Arrays.sort ๋๋ค์) (0) | 2023.01.27 |
---|---|
Java) HashMap์ computeIfAbsent์ ๋ํด(feat. getOrDefault) (0) | 2023.01.27 |
JPA, JPQL (0) | 2022.09.27 |
์ํธํ ์๊ณ ๋ฆฌ์ฆ ์ข ๋ฅ์ ์ถ์ฒ(SHA, PBKDF2, Bcrypt) + Java ์ ์ฉ ์ํ (0) | 2022.07.18 |
๊ฒ์ํ ๊ธ์ด ์ค๊ฐ์ ์ญ์ ์ > ๋ฒํธ ์ด๊ธฐํํ ์ธ๋ฑ์ฑ ํ๋ ๋ฐฉ๋ฒ (0) | 2022.07.13 |