Collection - Tree
TreeSet
์ด์ง ํธ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋กํ Set Collection์ด๋ค. TreeSet์ ๊ฐ์ฒด๋ฅผ ์ ์ฅํ๋ฉด ์๋์ผ๋ก ์ ๋ ฌ๋๋๋ฐ ์ด์งํ์ํธ๋ฆฌ์ฒ๋ผ ๋ถ๋ชจ ๋ ธ๋๊ฐ๊ณผ ๋น๊ตํด ๋ฎ์ผ๋ฉด ์ผ์ชฝ ์์๋ ธ๋, ๋์ผ๋ฉด ์ค๋ฅธ์ชฝ ์์ ๋ ธ๋์ ์ ์ฅํ๋ค.
๋ฆฌํดํ์
๋ฉ์๋
์ค๋ช
E
first()
์ ์ผ ๋ฎ์ ๊ฐ์ฒด๋ฅผ ๋ฆฌํด
E
last()
์ ์ผ ๋์ ๊ฐ์ฒด๋ฅผ ๋ฆฌํด
E
lower(E e)
์ฃผ์ด์ง ๊ฐ์ฒด๋ณด๋ค ๋ฐ๋ก ์๋ ๊ฐ์ฒด ๋ฆฌํด
E
higher(E e)
์ฃผ์ด์ง ๊ฐ์ฒด๋ณด๋ค ๋ฐ๋ก ์ ๊ฐ์ฒด ๋ฆฌํด
E
floor(E e)
์ฃผ์ด์ง ๊ฐ์ฒด์ ๋๋ฑํ ๊ฐ์ฒด๊ฐ ์์ผ๋ฉด ๋ฆฌํด, ๋ง์ฝ ์๋ค๋ฉด ๋ฐ๋ก ์๋์ ๊ฐ์ฒด ๋ฆฌํด
E
ceiling(E e)
์ฃผ์ด์ง ๊ฐ์ฒด์ ๋๋ฑํ ๊ฐ์ฒด๊ฐ ์์ผ๋ฉด ๋ฆฌํด, ๋ง์ฝ ์๋ค๋ฉด ๋ฐ๋ก ์์ ๊ฐ์ฒด ๋ฆฌํด
E
pollFirst()
์ ์ผ ๋ฎ์ ๊ฐ์ฒด ๊บผ๋ด์ค๊ณ Collection์์ ์ ๊ฑฐ
E
pollLst()
์ ์ผ ๋์ ๊ฐ์ฒด ๊บผ๋ด์ค๊ณ Collection์์ ์ ๊ฑฐ
๋ฆฌํดํ์
๋ฉ์๋
์ค๋ช
Iterator\
descendingIterator()
๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌ๋ Iterator ๋ฆฌํด
NavigableSet\
descendingSet()
๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌ๋ navigableSet ๋ฆฌํด
๋ง์ฝ ์ค๋ฆ์ฐจ์ ์ ๋ ฌ์ ํ๊ณ ์ถ๋ค๋ฉด, descendingSet()์ ๋๋ฒ ํธ์ถํ๋ฉด๋๋ค.
๋ฆฌํดํ์
๋ฉ์๋
์ค๋ช
NavigableSet\
headSet( E toElement, boolean inclusive)
์ฃผ์ด์ง ๊ฐ์ฒด๋ณด๋ค ๋ฎ์ ๊ฐ์ฒด๋ค์ NavigableSet์ผ๋ก ๋ฆฌํด ์ฃผ์ด์ง ๊ฐ์ฒด ํฌํจ ์ฌ๋ถ๋ ๋ ๋ฒ์งธ boolean๊ฐ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค.
NavigableSet\
tailSet( E fromElement, boolean inclusive)
์ฃผ์ด์ง ๊ฐ์ฒด๋ณด๋ค ํฐ ๊ฐ์ฒด๋ค์ NavigableSet์ผ๋ก ๋ฆฌํด ์ฃผ์ด์ง ๊ฐ์ฒด ํฌํจ ์ฌ๋ถ๋ ๋ ๋ฒ์งธ boolean๊ฐ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค.
NavigableSet\
subSet( E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)
์์๊ณผ ๋์ผ๋ก ์ฃผ์ด์ง ๊ฐ์ฒด ์ฌ์ด์ ๊ฐ์ฒด๋ค์ NavigableSet์ผ๋ก ๋ฆฌํด
TreeMap
TreeMap์ ์ด์ง ํธ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ Map Collection์ด๋ค. TreeSet๊ณผ์ ์ฐจ์ด์ ์ ํค์ ๊ฐ์ด ์ ์ฅ๋ Map.Entry๋ฅผ ์ ์ฅํ๋ค๋ ์ ์ด๋ค. ํค๊ฐ์ ๋น๊ตํด์ ์๋์ผ๋ก ์ ๋ ฌ๋๋ค.
Map ์ธํฐํ์ด์ค ํ์ ๋ณ์์ ๋์ ํด๋๋์ง๋ง TreeMap ํด๋์ค ํ์ ์ผ๋ก ๋์ ํ ์ด์ ๋ ํน์ ๊ฐ์ฒด๋ฅผ ์ฐพ๊ฑฐ๋ ๋ฒ์ ๊ฒ์๊ณผ ๊ด๋ จ๋ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์์ด๋ค.
๋ฆฌํดํ์
๋ฉ์๋
์ค๋ช
Map.Entry
firstEntry()
์ ์ผ ๋ฎ์ Map.Entry ๋ฆฌํด
Map.Entry
lastEntry()
์ ์ผ ๋์ Map.Entry ๋ฆฌํด
Map.Entry
lowerEntry(K key)
์ฃผ์ด์ง ํค๋ณด๋ค ๋ฐ๋ก ์๋ Map.Entry ๋ฆฌํด
Map.Entry
higherEntry(K key)
์ฃผ์ด์ง ํค๋ณด๋ค ๋ฐ๋ก ์ Map.Entry ๋ฆฌํด
Map.Entry
flooreEntry(K key)
์ฃผ์ด์ง ํค์ ๊ฐ์ ํค๊ฐ ์์ผ๋ฉด ํด๋น Map.Entry ๋ฆฌํด ์๋ค๋ฉด ์ฃผ์ด์ง ํค ๋ฐ๋ก ์๋ Map.Entry ๋ฆฌํด
Map.Entry
ceilingEntry(K key)
์ฃผ์ด์ง ํค์ ๊ฐ์ ํค๊ฐ ์์ผ๋ฉด ํด๋น Map.Entry ๋ฆฌํด ์๋ค๋ฉด ์ฃผ์ด์ง ํค ๋ฐ๋ก ์ Map.Entry ๋ฆฌํด
Map.Entry
pollFirstEntry()
์ ์ผ ๋ฎ์ Map.Entry ๋ฆฌํดํ๊ณ Collection์์ ์ ๊ฑฐ
Map.Entry
pollLastEntry()
์ ์ผ ๋์ Map.Entry ๋ฆฌํดํ๊ณ Collection์์ ์ ๊ฑฐ
๋ฆฌํดํ์
๋ฉ์๋
์ค๋ช
NavigableSet\
descendingKeySet()
๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌ๋ ํค์ NavigableSet ๋ฆฌํด
NavigableMap\
descendingMap()
๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌ๋ Map.Entry์ NavigableSet ๋ฆฌํด
์ค๋ฆ์ฐจ์ ์ ๋ ฌํ๊ณ ์ถ๋ค๋ฉด, descendingMap()์ ๋๋ฒ ํธ์ถํ๋ฉด๋๋ค.
๋ฆฌํดํ์
๋ฉ์๋
์ค๋ช
NavigableMap\
headMap( K toKey, boolean inclusive)
์ฃผ์ด์ง ํค๋ณด๋ค ๋ฎ์ Map.Entry๋ฅผ NavigableMap์ผ๋ก ๋ฆฌํด ์ฃผ์ด์ง ๊ฐ์ฒด ํฌํจ ์ฌ๋ถ๋ ๋ ๋ฒ์งธ boolean๊ฐ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค.
NavigableMap\
tailMap( K fromKey, boolean inclusive)
์ฃผ์ด์ง ํค๋ณด๋ค ๋์ Map.Entry๋ฅผ NavigableMap์ผ๋ก ๋ฆฌํด ์ฃผ์ด์ง ๊ฐ์ฒด ํฌํจ ์ฌ๋ถ๋ ๋ ๋ฒ์งธ boolean๊ฐ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค.
NavigableMap\
subMap( K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)
์์๊ณผ ๋ ์ฌ์ด์ Map.Entry๋ฅผ NavigableMap์ผ๋ก ๋ฆฌํด
Comparable, Comparator
TreeSet๊ณผ TreeMap์ ์ ๋ ฌ์ ์ํด java.lang.Comparable
์ ๊ตฌํํ ๊ฐ์ฒด๋ฅผ ์๊ตฌํ๋ค. ๋ง์ฝ Comparable์ ๊ตฌํํ๊ณ ์์ง ์์ ๊ฒฝ์ฐ์๋ ์ ์ฅํ๋ ์๊ฐ ClassCastException์ด ๋ฐ์ํ๋ค. ์ด๋, ์์ฑ์์ ๋งค๊ฐ ๊ฐ์ผ๋ก Comparator๋ฅผ ์ ๊ณตํ๋ฉด Comparable์ด ์๋ ๊ฐ์ฒด๋ ์ ๋ ฌ์ํฌ ์ ์๋ค.
ํน์ ์ฌ์ฉ์ ์ ์ ํด๋์ค์์ compareTo()
๋ฉ์๋๋ฅผ ์ค๋ฒ๋ผ์ด๋ฉํ์ฌ ๊ตฌํํ๋ฉด๋๋ค.
Comparable
Comparator
Last updated