ALGORITHM_ArrayList & HashMap
๐ ALGORITHM
๐ ArrayList & HashMap
Collection
- List ๊ณ์ด
- AbstractList, ArrayList, LinkedList, Vector
- Map ๊ณ์ด
- AbstractMap, Attributes, HashMap, Hashtable, identityHashMap, RenderingHints, TreeMap, WeakHashMap
- Set ๊ณ์ด
- AbstractSet, HashSet, LinkenHashSet, TreeSet
- Collection, List, Map, Set์ ๋ชจ๋ ๊ตฌํ๋์ง ์์ Interface์ด๋ค.
- ๊ทธ๋์ ๊ตฌํ๋ class๋ฅผ ์ฌ์ฉํด์ ์ ์ํด์ฃผ์ด์ผ ํ๋ค.
- List a = new List(); -> X
- List a = new ArrayList(); -> O ( ๋คํ์ฑ -> ๋ถ๋ชจ๋ ์ฌ๋ฌ๊ฐ์ง ์์์ ํํ๋ก ๋ํ๋ผ ์ ์๋ค.)
๊ณ์ด๋ค ํน์ง
-
Collection์ ์์๋ค์ ์์ ๋ค๋ง์ ๊ณ ์ ํ ํน์ง์ ๋ช ํํ ๊ฐ์ง๋ค.
-
List
- ์์ง์ ์์๊ฐ ์๋ค.
- ๋์ผํ ๋ฐ์ดํฐ์ ์ค๋ณต ์ ๋ ฅ ๊ฐ๋ฅ
- ์์ฐจ์ ์ผ๋ก ๋๋์ ๋ฐ์ดํฐ๋ฅผ ์ ๊ทผํ๊ฑฐ๋ ์ ๋ ฅํ ๋ ์ ๋ฆฌํจ
-
Map
- Key & value์ ํํ๋ก ์ ๋ ฅ
- ํค๊ฐ์ ์ ๋ ฅํ๋ฉด ํด๋นํ๋ value ๊ฐ์ ํ๋
- ์์ง์ ์์๋ฅผ ๊ธฐ์ตํ์ง ์๋๋ค.
- ๋์ผํ ๋ฐ์ดํฐ๋ฅผ key ๊ฐ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค.
- ๋๋์ ๋ฐ์ดํฐ์์ ์ํ๋ ํน์ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ ๋ ์ ๋ฆฌํจ
-
Set
- ์ค๋ณต๋๋ ๋ฐ์ดํฐ๋ฅผ ๋ถํํ๋ ๊ฒ์ ์ ์ธํ๊ณ ๋ ํฐ ํน์ง์ด ์์
- ์ ๋ ฅ๋๋ ๋น์๋ ์์์๋ ๋ฐ๋ฅด์ง ์์ผ๋ ์์ฐจ์ ์ธ ์ ๊ทผ์ ์ํด์๋ Iterator๋ก ์ ๊ทผํ๊ฒ ๋๋ค.
ArrayList์ HashMap์ ์ฐจ์ด
-
์
๋ ฅ ๋ฐฉ์ ์ฐจ์ด์
-
ArrayList
- add(Object o), add(int index, Object o), set(int index, Object o) ..
- ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ๊ธฐ ์ํด์๋ ์ฒ์๋ถํฐ ๋๊ฐ์ง ๋๊ฑฐ๋ ์ฌ์ฉ์๊ฐ index๋ฅผ ์์์ผํจ
- index ์ ๋ณด๋ฅผ ์๊ณ ์๋ค๋ฉด ArrayList๊ฐ HashMap๋ณด๋ค ๋น ๋ฆ
-
HashMap
- put(Object key, Object value)
- Key๊ฐ์ Object๋ก ๊ฐ๊ณ ์๊ธฐ์ ์๋ฐ์์ ์ฌ์ฉ๊ฐ๋ฅํ ๋ชจ๋ class ๊ฐ๋ฅ
- Key ๊ฐ์ ํ์ฉํด ๋ฐ๋ก ์ํ๋ ์ ๋ณด๋ฅผ ์ป์ด๋ผ ์ ์๊ธฐ์ ๊ฒ์ ๋ฅ๋ ฅ์ด ํ์ํ๋ค.
-
ArrayList
- ์ฉ๋์ ์ฐจ์ด์