Comparable ๊ฐ๋
Comparable์ด๋?
Comparable์ ์ธํฐํ์ด์ค๋ก ์ปฌ๋ ์ ์ ์ ๋ ฌํ๋๋ฐ ํ์ํ ๋ฉ์๋๋ฅผ ์ ์ํ๊ณ ์์
Comparable์ ๊ตฌํํ๊ณ ์๋ ํด๋์ค๋ ๊ฐ์ ํ์ ์ ์ธ์คํด์ค๋ผ๋ฆฌ ๋น๊ตํ ์ ์๋ ํด๋์ค๋ค์
Comparable์ ๊ตฌํํ ํด๋์ค๋ค์ ์ ๋ ฌ์ด ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ ์๋ฏธํจ
ํ์์ ์ผ๋ก ๊ตฌํํด์ผ ํ๋ ๋ฉ์๋๋ CompareTo()
Comparator ๊ฐ๋
Comparator๋?
Comparable์ด ๊ฐ์ฒด๋ฅผ ์ ๋ ฌ์ด ๊ฐ๋ฅํ๋๋ก ํด์ค๋ค๋ฉด ์๋ ์ ๋ ฌ ๊ธฐ์ค์ ์ง์ ํ ์ ์์
์ฆ, Comparable์์ ๊ตฌํํ ๊ธฐ๋ณธ ์ ๋ ฌ๊ธฐ์ค ์ธ์ ๋ค๋ฅธ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๊ณ ์ํ ๋ ์ฌ์ฉํจ
Ex) ์ด๋ฏธ ๊ตฌํ๋ ์ค๋ฆ์ฐจ์์ด ์๋ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํ๊ณ ์ถ์ ๋
Comparable, Comparator์ ์ด์ฉํ Collection ์ ๋ ฌ
๋ง์ฝ ๊ฒ์์์ ์ ์ ๋ญํน์ ๊ตฌํํ๊ณ ์ถ์๋ ์ด๋ป๊ฒ ํ ๊น?
- ์ ์ ์ ์ด๋ฆ๊ณผ ์ ์ ์ ๊ฒ์ ์ ์๋ฅผ ํฌํจํ๋ User ํด๋์ค ์์ฑ
- ์ ์ ์ ๊ฒ์ ์ ์๋ณ๋ก ์ ๋ ฌํ ์ ์๋๋ก Comparable ๊ตฌํ
- ์ค๋ฆ์ฐจ์์ด ์๋ ๋ด๋ฆผ์ฐจ์์ผ๋ก ๋ณด์ฌ์ฃผ๋ ๊ฒฝ์ฐ๋ฅผ ๋๋นํ์ฌ Comparator๋ฅผ ๊ตฌํํ Descending ํด๋์ค ์์ฑ