'equal'에 해당되는 글 1건

  1. 2007.11.02 값의 비교와 레퍼런스
Study - Programming/JAVA2007. 11. 2. 01:42

  자바를 공부하면서 항상 느끼는 것인데.. 정말 자바는 객체로 시작해서 객체로 끝난다.. 이렇게 객체만 사용하다 보면 객체에 대한 감을 못잡을 리가 없다.

  다음 코드를 보자.

public class Equivalence {
 public static void main(String[] args)
 {
  Integer n1 = new Integer(10);
  Integer n2 = new Integer(10);
  System.out.println(n1==n2);
 }
}
  이 코드의 결과값은 무엇일까? 언뜻 보면 true일 것 같지만 답은 false이다. 왜 그럴까? 조금만 생각해보면 알 것이다. 위에서의 비교문은 n1이 가리키고 있는 객체와 n2가 가리키고 있는 객체가 같은 객체인가를 묻는 것이다. 그러니 당연히 false가 나올 수밖에.

  그렇다면 n1과 n2의 값을 비교하려면 어떻게 해야 할까? 답은 equals()메소드에 있다. n1==n2를 다음과 같이 고치면 true가 나올 수 있다.

n1.equals(n2)

  의미는 금방 파악이 갈 것이다. 값의 비교를 해 주는 메서드이다.

Posted by 머리