A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

equalis重写后怎么使用  例如验证两本书内容是否相同,,,,,

2 个回复

倒序浏览
如果是将两本书当成对象的话,那么equals重写时,传递的参数就是书类型的对象。在调用的时候用一个书类型的对象调用equals(Object obj)方法,将另外一个书类型的对象作为参数传进去,返回结果为true或false。
回复 使用道具 举报
本帖最后由 Clouddd 于 2015-8-6 23:03 编辑

楼主这是我刚刚写的,不知道能不能满足你的需求,根据你说要判断两本书的内容是否一致,我把书当成了一个bean,然后内容(content)是该bean的属性。
这里我把equals的形参只写了一本书,因为我的思路是一本书去判断和另外一本书的内容是否一致。在这个equals里面其实进行的判断的是两本书的内容,说白了就是两个字符串的内容进行判断。
如果在没有用重写的equals的情况下:
bookA.equals(bookB)
指得是判断bookA和bookB的引用是否一致
希望对你有用~
图好小哦。。。
public class AAAAA {

        public static void main(String args[]) {
                Book bookA = new Book("A");
                Book bookB = new Book("B");
                Book bookC = new Book("A");
                System.out.println(bookA.equals(bookC));
                System.out.println(bookA.equals(bookB));
        }

}

class Book {
        
        private String content;

        public String getContent() {
                return content;
        }

        public void setContent(String content) {
                this.content = content;
        }

        public Book() {
        }

        public Book(String content) {
                this.content = content;
        }
        
        public boolean equals(Book b){
                if(this.getContent().equals(b.getContent())){
                        return true;
                }else{
                        return false;
                }
        }
}






1.gif (37.43 KB, 下载次数: 0)

1.gif
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马