Equals

Posted 2015. 4. 10. 15:54

package chap9;

// Equels 메서드 연습

class Value{
 int value;
 Value(int value){
  this.value = value;
 }
}

// Object 클래스의 equals 메서드는 객체비교방식 구현
// 객체비교는 == 연산자로도 가능
// equals 메서드는 내용비교하는 방식으로 오버라이딩 필요
// 대부분의 클래스는 equals 메서드를 내용비교 방식으로
// 오버라이딩해서 사용하고 있다. ( string )

public class Equalsx1 {
  
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Value v1 = new Value(10);
  Value v2 = new Value(10);
  
  if( v1 == v2 ) System.out.println("v1객체와 v2객체는 같습니다.");
  else System.out.println("v1객체와 v2객체는 다릅니다.");

--> 객체는 v1, v2를 말함. 다르다가 출력됨.
  
  if( v1.equals(v2) ) System.out.println("v1.equals(v2) : true");
  else System.out.println("v1.equals(v2) : false");

--> equals도 마찬가지로 객체를 비교함. 다르다가 출력됨
  
  
  v2 = v1;
  if( v1 == v2 ) System.out.println("v1객체와 v2객체는 같습니다.");
  else System.out.println("v1객체와 v2객체는 다릅니다.");

--> 참조자가 같아 지면서 같다가 출력됨  


  if( v1.equals(v2) ) System.out.println("v1.equals(v2) : true");
  else System.out.println("v1.equals(v2) : false");
 }
}

--> 마찬가지로 같다가 출력됨.

'Java !!!' 카테고리의 다른 글

HashCode  (0) 2015.04.10
Equals_Ex2  (0) 2015.04.10
StringBuffer_Ex2  (0) 2015.04.10
StringBuffer  (0) 2015.04.10
innerClass_Ex4  (0) 2015.04.10