λΉ λ₯Έ μμ½
νμμμλ λ€μν νλ‘κ·Έλλ° κ°λ
μ λ€λ£¨μμΌλ©°, κ°μ²΄ μ λ ¬ λ° λΉκ΅ λ°©λ² νμμ μν Comparable μΈν°νμ΄μ€ ꡬνμ μ€μ μ λμμ΅λλ€. μ°Έκ°μλ€μ λ°°μ΄, λͺ©λ‘ λ° μ΅λͺ
κ°μ²΄λ₯Ό ν¬ν¨ν λ°μ΄ν° ꡬ쑰λ₯Ό λ§λ€κ³ μ‘°μνλ κ²μ λν΄ ν λ‘ νμΌλ©° νΉμ μ½λ© μμ
κ³Ό λ¬Έμ λ₯Ό ν΄κ²°νμ΅λλ€. μΈμ
μ λ€λ£¨λ κ°λ
κ³Ό μΆκ° μ€μ΅μ λν μ μμ κ²ν νμ¬ λ§λ¬΄λ¦¬λμμ΅λλ€.
λ€μ λ¨κ³
β’ λͺ¨λ μ°Έμμλ Javaμμ Comparable μΈν°νμ΄μ€λ₯Ό ꡬννλ λ°©λ²μ κ²ν νκ³ μ°μ΅ν©λλ€.
β’ λͺ¨λ μ°Έμμλ κ°λ
κ²μ¦μ μν΄ κ΅μ€μ μ
λ‘λλ ν΄μ¦λ₯Ό μλ£ν΄μΌ ν©λλ€.
β’ λͺ¨λ μ°Έμμλ λ€μ μκ° μΈμ
μ μν΄ μ²μνκ³ μ€λΉν΄μΌ ν©λλ€.
μμ½
κ°μ²΄ μ λ ¬μ μν λΉκ΅ κ°λ₯ν μΈν°νμ΄μ€
νμμμ Alohaλ Comparable μΈν°νμ΄μ€λ₯Ό μ¬μ©νμ¬ κ°μ²΄λ₯Ό λΉκ΅νλ κ°λ
μ λ
Όμνμ΅λλ€. κ·Έλ μΈν°νμ΄μ€κ° νΉμ κΈ°μ€μ λ°λΌ κ°μ²΄λ₯Ό λΉκ΅νκ³ μ λ ¬ ν μ μλ€κ³ μ€λͺ
νμ΅λλ€. Alohaλ Comparable μΈν°νμ΄μ€λ₯Ό ꡬννλ ν΄λμ€λ₯Ό λ§λ€κ³ κ°κ²©μ λ°λΌ κ°μ²΄ 컬λ μ
μ μ λ ¬ν¨μΌλ‘μ¨ μ΄λ₯Ό μ
μ¦νμ΅λλ€. κ·Έλ λν λΉκ΅ κΈ°μ€μ μ€μ νκ³ μ»¬λ μ
μ μμΉ μμλ‘ μ 리νλ κ²μ΄ μ€μνλ€κ³ λ
Όμνμ΅λλ€.
μ λ ¬μ μν λΉκ΅ λ°©λ² κ΅¬ν
μ΄ ν λ‘ μ νλ‘κ·Έλλ° λ§₯λ½μμ κ°μ²΄λ₯Ό μ λ ¬νκΈ°μν λΉκ΅ λ°©λ²μ ꡬννκ³ κ°μ νλ λ° μ€μ μ λ‘λλ€. κ·Έλ€μ 쑰건문 λ° μν μ°μ°μ μ¬μ©νλ κ²μ ν¬ν¨νμ¬ κ°κ²©μ λΉκ΅νλ λ€μν μ κ·Ό λ°©μμ νμν©λλ€. νμ λν κ΅μ‘ λλ νλ ¨ νκ²½μμ μμ
μ μ μΆνκ³ ν¬μΈνΈλ₯Ό μ»λ μ λ΅μ λ
Όμν©λλ€. λ§μ§λ§μ κ΄μ μ°μμμ μ·¨μ
μ μμ κ°λ΅νκ² μΈκΈνκ³ μ«μ λμ ν
μ€νΈ λ¬Έμμ΄μ λΉκ΅νκΈ°λ‘ κ²°μ νμ΅λλ€.
μν λΆλ₯ λ° μ λ ¬ κΈ°μ
μ΄ κ·Έλ£Ήμμλ μν ν΄λμ€λ₯Ό λ§λ€κ³ , λ€μν κΈ°μ€μ λ°λΌ μνλ₯Ό μ λ ¬νκΈ° μν΄ Comparable μΈν°νμ΄μ€λ₯Ό ꡬννλ λ°©λ²μ λν΄ λ
Όμν©λλ€. μν μ λͺ©, κ°κ²© λ° μ¬λ¬ μμμ μ‘°ν©μ ν¬ν¨ν λ€μν μ λ ¬ λ°©λ²μ νꡬν©λλ€. ν λ‘ μ κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ° κ°λ
μ λν΄ λ€λ£¨λ©° μ λͺ©, κ°λ
λ° κ°κ²©κ³Ό κ°μ μμ±μ κ°μ§ μν κ°μ²΄λ₯Ό λ§λλ μμ λ₯Ό ν¬ν¨ν©λλ€. λνλ λν κ°μΈμ μΈ μν μ νΈλμ μΆμ²μ λν΄ κ°λ΅νκ² μ΄μΌκΈ°ν©λλ€.
λΉκ΅λ₯Ό ν΅ν νμ μμ μ λ ¬ ꡬν
ν λ‘ μ κ°μ²΄ μ λ ¬μ μν λΉκ΅ λ°©λ²μ ꡬννλ λ° μ€μ μ λ‘λλ€. μ°μ¬λ λμ΄μ λ°λΌ νμ μμλ‘ μ λ ¬νκ³ , λμ΄κ° κ°μΌλ©΄ μ΄λ¦μΌλ‘ 2μ°¨ μ λ ¬νλ λ°©λ²μ μ€λͺ
ν©λλ€. λΉκ΅ λ‘μ§μ΄ μ΄λ»κ² μλνλμ§ μμλ₯Ό μ 곡νλ©°, κΈμ μ λ° λΆμ μ μΈ λ°ν κ°μ΄ μ λ ¬ μμμ λ―ΈμΉλ μν₯μ 보μ¬μ€λλ€. μ°μ¬λ λν νΉμ μμλ₯Ό ν΅ν΄ λ€μν λμ΄μ μ΄λ¦μ μ¬λ¬ κ°μ²΄λ₯Ό μ¬μ©νμ¬ κ°λ
μ μ€λͺ
νκ³ , μ λ ¬ κΈ°μ€μ΄ μνλ μμλ₯Ό λ¬μ±νλ λ°©λ²μ 보μ¬μ€λλ€.
μ¬μ©μ κ°μ²΄ μ½λ© λ° ν μ€νΈ
λ°νμλ μ¬μ©μ κ°μ²΄μ λͺ©λ‘μ ν¬ν¨νλ μ½λ© μμ
μ μ§ν μ€μ
λλ€. κ·Έλ€μ λμ΄μ μ΄λ¦κ³Ό κ°μ μμ±μ ν¬ν¨ν λ¨μ± κ°μ λΆλ₯Ό μν λ°μ΄ν° νλͺ©μ λ§λ€κ³ μ‘°μνκ³ μμ΅λλ€. λ°νμλ λ€μν μ
λ ₯μ ν
μ€νΈνκ³ μ½λλ₯Ό μ‘°μ νλ©°, λλ‘λ κ²°κ³Όμ λν λ§μ‘±μ΄λ μ’μ κ°μ ννν©λλ€.
IDλ‘ μ¬μ©μ κ°μ²΄ μ λ ¬νκΈ°
μ΄ ν λ‘ μ μ¬μ©μ κ°μ²΄μ λν μ λ ¬ μκ³ λ¦¬μ¦ κ΅¬νμ μ€μ μ λ‘λλ€. κ·Έλ€μ λμ΄κ° κ°μ λλ μ°λ Ήλ³λ‘ νμ μμλ‘, μ΄λ¦μΌλ‘ μμΉ μμλ‘ μ λ ¬νλ λ€μν μ κ·Ό λ°©μμ νμν©λλ€. νμ λ¬Έμμ΄μ Compare λ©μλλ₯Ό μ¬μ©νλ κ²μ κ³ λ €νκ³ μ΅μ’
μ λ ¬ κΈ°μ€μΌλ‘ ID νλλ₯Ό μΆκ°ν κ°λ₯μ±μ λ
Όμν©λλ€. κ·Έλ€μ νμ μμ€ν
μ μ¬μ©νλ©΄ μ λ ¬ λ
Όλ¦¬λ₯Ό μ§λμΉκ² 볡μ‘νκ² λ§λ€μ§ μκ³ λ μΆ©λΆν μ μλ€κ³ κ²°λ‘ λ΄λ¦½λλ€.
Java νλ‘κ·Έλλ° κ°λ λ° λ°μ΄ν° ꡬ쑰
κ°μ¬λ Javaμ λ°°μ΄, λͺ©λ‘ λ° μ΅λͺ
κ°μ²΄μ μ΄μ μ λ§μΆ λ€μν νλ‘κ·Έλλ° κ°λ
μ μ€λͺ
ν©λλ€. μ λ ¬ λ° μΈν°νμ΄μ€ ꡬνμ ν¬ν¨νμ¬ μ΄λ¬ν λ°μ΄ν° ꡬ쑰λ₯Ό λ§λ€κ³ μ‘°μνλ λ°©λ²μ 보μ¬μ€λλ€. μ΄ μμ
μ λν μ΅λͺ
ꡬν κ°μ²΄μ λΉκ΅κΈ°μ μ¬μ©μ λ€λ£Ήλλ€. λ§μ§λ§μ κ°μ¬λ νμλ€μ΄ μ°μ΅ ν μ½λ© λ¬Έμ λ₯Ό μ μνκ³ μμ
μμ λ€λ£¬ κ°λ
μ κ²ν νλλ‘ μ μν©λλ€. μΈμ
μ νμλ€μκ² λ€μ μκ° λμ μ²μνκ³ μ€λΉνλλ‘ μκΈ°μμΌμ λλ©λλ€.