Collection
Collection์ด๋?
List,Map,Set์ธํฐํ์ด์ค๋ฅผ ๊ธฐ์ค์ผ๋ก ์ฌ๋ฌ ๊ตฌํ์ฒด๊ฐ ์กด์ฌ์ฌ์ฉํ๋ ์ด์๋ค์์ Data ๋ฅผ ๋ค๋ฃจ๋๋ฐ
ํ์คํ๋ ํด๋์ค๋ค์ ์ ๊ณตํด์ฃผ๊ธฐ ๋๋ฌธ์ DataStructure ๋ฅผ ์ง์ ๊ตฌํํ์ง ์๊ณ ํธํ๊ฒ ์ฌ์ฉํ ์ ์๊ธฐ ๋๋ฌธ๋ฐฐ์ด๊ณผ ๋ค๋ฅด๊ฒ
๊ฐ์ฒด๋ฅผ ๋ณด๊ดํ๊ธฐ ์ํ ๊ณต๊ฐ์ ๋ฏธ๋ฆฌ ์ ํ์ง ์์๋ ๋๋ฏ๋ก, ์ํฉ์ ๋ฐ๋ผ๊ฐ์ฒด์ ์๋ฅผ ๋์ ์ผ๋ก ์ ํ ์ ์๋คํ๋ก๊ทธ๋จ์ ๊ณต๊ฐ์ ํจ์จ์ฑ ๋ํ ๋์ฌ์ค๋ค
Collection์ ์ข
๋ฅ
List
List์ธํฐํ์ด์ค๋ฅผ ์ง์ @Override๋ฅผ ํตํด ์ฌ์ฉ์๊ฐ ์ ์ํ์ฌ ์ฌ์ฉํ ์๋ ์์ผ๋ฉฐ, ๋ํ์ ์ธ ๊ตฌํ์ฒด๋ก๋ArrayList๊ฐ ์กด์ฌํ๋ค.์ด๋ ๊ธฐ์กด์ ์์๋
Vector๋ฅผ ๊ฐ์ ํ ๊ฒ์ด๋ค
LinkedList๊ฐ node๊ฐ ๋ฐ์ดํฐ์ ํฌ์ธํฐ๋ฅผ ๊ฐ์ง๊ณ ํ ์ค๋ก ์ฐ๊ฒฐ๋์ด ์๋ ๋ฐฉ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ์๋ฃ๊ตฌ์กฐ
๋ฐ์ดํฐ๋ฅผ ๋ด๊ณ ์๋ node๋ค์ด ์ฐ๊ฒฐ๋์ด ์๋๋ฐ, node์ ํฌ์ธํฐ๊ฐ ๋ค์์ด๋ ์ด์ node์์ ์ฐ๊ฒฐ์ ๋ด๋นํ๋ค
์ฅ์ ๋์ด์ node์ ์ค๊ฐ์ง์ ์์๋ ์๋ฃ์ ์ถ๊ฐ/์ญ์ ๊ฐ
O(1)์ ์๊ฐ์ ๊ฐ๋ฅํ๋ค๋ ์ฅ์ ์ ๊ฐ๋๋ค
๋จ์ ๋ฐฐ์ด์ด๋ ํธ๋ฆฌ ๊ตฌ์กฐ์๋ ๋ค๋ฅด๊ฒ ํน์ ์์น์ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ๋๋ฐ๋
O(n)์ ์๊ฐ์ด ๊ฑธ๋ฆฐ๋ค๋ ๋จ์ ์ด ์๋ค
Map
๋ํ์ ์ธ ๊ตฌํ์ฒด๋ก
HashMap์ด ์กด์ฌํ๋คkey-value์ ๊ตฌ์กฐ๋ก ์ด๋ฃจ์ด์ ธ ์์ผ๋ฉฐ Map ์ ๋ํ ๊ตฌ์ฒด์ ์ธ ๋ด์ฉ์ DataStructure ๋ถ๋ถ์hashtable๊ณผ ์ผ์นํ๋คkey ๋ฅผ ๊ธฐ์ค์ผ๋ก
์ค๋ณต๋ ๊ฐ์ ์ ์ฅํ์ง ์์ผ๋ฉฐ์์๋ฅผ ๋ณด์ฅํ์ง ์๋๋คkey ์ ๋ํด์ ์์๋ฅผ ๋ณด์ฅํ๊ธฐ ์ํด์๋
LinkedHashMap์ ์ฌ์ฉํ๋ค
Set
๋ํ์ ์ธ ๊ตฌํ์ฒด๋ก
HashSet์ด ์กด์ฌํ๋ค.value์ ๋ํด์ ์ค๋ณต๋ ๊ฐ์ ์ ์ฅํ์ง ์๋๋ค์ฌ์ค Set ์๋ฃ๊ตฌ์กฐ๋ Map ์ key-value ๊ตฌ์กฐ์์ key ๋์ ์ value ๊ฐ ๋ค์ด๊ฐ value ๋ฅผ key ๋ก ํ๋ ์๋ฃ๊ตฌ์กฐ์ผ ๋ฟ์ด๋ค
๋ง์ฐฌ๊ฐ์ง๋ก ์์๋ฅผ ๋ณด์ฅํ์ง ์์ผ๋ฉฐ ์์๋ฅผ ๋ณด์ฅํด์ฃผ๊ธฐ ์ํด์๋
LinkedHashSet์ ์ฌ์ฉํ๋ค
Last updated