Java | equals
λ¬Έμμ΄μ λμμΌλ‘ equals μ == μ μ°¨μ΄μ μ λν΄μ 곡λΆνλ€.
κΈ°λ³Έμ μΌλ‘λ λκ°μ§ λͺ¨λ μ μͺ½μ λ΄μ©μ λΉκ΅ν κ°μ boolean type μΌλ‘ λ°ννλ€.
κ·Έλ λ€λ©΄ λͺ νν μ°¨μ΄μ μ λν΄μ μμ보μ.
νν
equals() λ λ©μλ
== λ λΉκ΅λ₯Ό μν μ°μ°μ
μ£Όμκ° λΉκ΅, λ΄μ© λΉκ΅
λΉκ΅ λμμ λν μ°¨μ΄μ μΌλ‘,
equals λ©μλλ λΉκ΅νκ³ μ νλ λμμ λ΄μ© μ체λ₯Ό λΉκ΅νλ€.
== μ°μ°μλ λΉκ΅νκ³ μ νλ λμμ μ£Όμκ°μ λΉκ΅νλ€.
μ£Όμκ°μ κ°λ¨νκ² μ΄ν΄νμλ©΄, λμμ ꡬλ³ν μ μκ² νλ κ°.
CBV(Call By Value) λ κΈ°λ³Έμ μΌλ‘ λμμ μ£Όμκ°μ κ°μ§μ§ μλ κ²μΌλ‘ κ°μ ν λΉλ°λ ννλ‘ μ¬μ©λ¨.
μ) int, float, double, byte λ± primitive type μ ν΄λΉ
CBR(Call By Reference) λ λμμ μ μΈνμ λ, μ£Όμκ°μ΄ λΆμ¬λ¨.
Class, Object(κ°μ²΄) κ° ν΄λΉ
μλ₯Ό λ€μ΄ μλμ κ°μ΄ λͺ¨λ "aaa" λΌλ λ΄μ©μ κ°μ§κ³ μλ€. μ£Όμκ°μ λν΄μλ λ€λ₯Έ κ°μ κ°μ§λ λ³μκ° μ‘΄μ¬νλ€.
String a = "aaa";
String b = a;
String c = new String("aaa");
b λ a μ΄λ―λ‘ String a μ String b λ μ£Όμκ°μ΄ κ°λ€.
νμ§λ§ μλ‘μ΄ κ°μ²΄λ₯Ό μμ±ν String c λ a, b μ λ€λ₯Έ μ£Όμκ°μΌλ‘ μ μΈλμ΄ μμ±λλ€.
λ°λΌμ a, b μ κ°μ§λ§ c λ λ€λ₯΄λ€.
μ λ΄μ©μ κ·Όκ±°νμ¬ μμλ₯Ό λ€μ΄λ³΄μ.
System.out.println(a.equals(b));
System.out.println(a == b);
System.out.println(a == c);
System.out.println(a.equals(c));
// 첫λ²μ§Έλ aμ bκ° κ°μ§κ³ μλ λ΄μ©μ λΉκ΅νμμΌλ―λ‘ true
// λλ²μ§Έλ aμ bκ° κ°μ§κ³ μλ μ£Όμκ°μ λΉκ΅νκ³ μμΌλ―λ‘ true
// μΈλ²μ§Έλ aμ cκ° κ°μ§κ³ μλ μ£Όμκ°μ λΉκ΅νκ³ μμΌλ―λ‘ false
// λ€λ²μ§Έλ aμ cκ° κ°μ§κ³ μλ λ΄μ©μ λΉκ΅νμμΌλ―λ‘ true
μΆμ² | http://ojava.tistory.com/category/Program/JAVA
μ½λ© μ€μ '==' μ°μ°μλ₯Ό μ¬μ©νλ€κ°, μμ κ°μ μν©μΌλ‘ μ£Όμκ°μ΄ λ€λ₯Έ μμΈμ μ λλ‘ νμ νμ§ λͺ»ν΄μ λͺμκ°μ λ λ Έλ€.
λ©μμ΄ μ€ν νλ‘μ° κ°λ°μλλ€ λλΆμ equals λ₯Ό μΆμ²ν΄μ€μ ν΄κ²°νμ§λ§, μ λλ‘ μκ³ λμ΄κ°κΈ° μν΄ κΈμ λ¨κΈ΄λ€.