2011. 6. 18. 06:01

자바(Java), `==`와 equals() 차이점 비교

  1: public class StringCompare {
  2:  public static void main(String[] args)  {
  3:   String str1 = "자바" ;
  4:   String str2 = "자바" ;
  5: 
  6:   String str3 = new String("자바") ;
  7:   String str4 = new String("자바") ;
  8: 
  9:   System.out.println("==로 변수의 참조 주소값 비교 결과") ;
 10: 
 11:   if (str1 == str2) {
 12:    System.out.println("객체 참조 변수 str1과 str2는 같다.") ;
 13:   }
 14:   else
 15:    System.out.println("객체 참조 변수 str1과 str2는 다르다.") ;
 16: 
 17:   if (str3 == str4) {
 18:    System.out.println("객체변수 str3과 str4는 같다.") ;
 19:   }
 20:   else
 21:    System.out.println("객체변수 str3과 str4는 다르다.") ;
 22: 
 23:   System.out.println("\nequals() 내용비교 결과") ;
 24: 
 25:   if (str1.equals(str2)) {
 26:    System.out.println("객체 참조 변수 str1과 str2는 같다.") ;
 27:   }
 28:   else
 29:    System.out.println("객체 참조 변수 str1과 str2는 다르다.") ;
 30: 
 31:   if (str3.equals(str4)) {
 32:    System.out.println("객체변수 str3과 str4는 같다.") ;
 33:   }
 34:   else
 35:    System.out.println("객체변수 str3과 str4는 다르다.") ;
 36: 
 37:   System.out.println() ;  
 38:  }
 39: }