2014년 1월 12일 일요일

자바객체, String비교하기(equals, == ) , 자바 문자열비교, 객체비교, Java String

자바객체, String비교하기(equals, == ) , 자바 문자열비교, 객체비교, Java String

자바 객체를 비교하는 방법 입니다.
결과 참고 하세요~
 
 
import java.util.Vector;

class First  {
 String name = null;
 First(String name) {
  this.name = name;
 }

 public boolean equals(First f) {
  return f.name == this.name;
 }
}
public class Test {
 public static void main(String[] args) throws Exception { 
 
  First f1 = new First("11");
  First f2 = new First("11"); 
 
  //만약 First 클래스가 equals를 재정의 안했다면 아래 f1.equals(f2)는 false
  System.out.println(f1.equals(f2));   //true
  System.out.println(f1 == f2);        //false
 
 
  Vector v = new Vector();
  Vector v1 = new Vector();
 
  v.addElement("javaok");
  v1.addElement("javaok");
 
  //Vector는 상위클래스인 AbstractList에서 equals를 재정의
  //벡터에 들어가 있는 값이 같은면 같다고 
  System.out.println(v.equals(v1));   //true
  System.out.println(v==v1);          //false
 
  String s1 = "123";
  String s2 = "123";
 
  System.out.println(s1.equals(s2));  //true
  System.out.println(s1 == s2);       //true
 
  String s3 = new String("123");
  String s4 = new String("123");
 
  System.out.println(s3.equals(s4));  //true
  System.out.println(s3 == s4);      //false   
 } 
}



댓글 없음:

댓글 쓰기