24_equals()方法

package coms;
/**
 * equals()方法:比较2个对象的内容是否相等
 * @author user
 *
 */
public class javalx30 {

    public static void main(String[] args) {
        String s1=new String("suns");
        String s2=new String("suns");
        System.out.println(s1.equals(s2));//true
        
        //equals方法的默认实现为对比对象的引用是否相等
        Studentu a=new Studentu();
        a.setnameage("suns", 21);
        Studentu b=new Studentu();
        b.setnameage("suns", 21);
        System.out.println(a.equals(b));//equals方法覆盖之前是false   覆盖之后是true
    }
}


class Studentu{
    private String name;
    private int age;
    public void setnameage(String a,int b){
        this.name=a;
        this.age=b;
    }
    //equals的覆盖
    public boolean equals(Object o){
        
        if(o==null)return false;//判断是否为空
        if(this==o)return true;//判断当前对象和参数是否为同一对象;
        if(this.getClass()!=o.getClass())return false;//判断当前对象和参数是否为同一类型的
        
        Studentu s=(Studentu)o;
        if(this.name.equals(s.name)&&this.age==s.age){
            return true;
        }else{
            return false;
        }
    }
}

 

posted on 2015-02-10 15:29  皮鞋很忙  阅读(62)  评论(0)    收藏  举报

导航