对象比较
对象比较一定是某一个类自己的功能。
对象比较一定要判断是否为 null,地址是否相同,属性是否相同。
package com.company;
//定义书类
class Book{
private String title;
private double price;
//定义构造函数
public Book(String title, double price){
this.title = title;
this.price = price;
}
//setter,getter,无参构造略
//返回书信息
public String getInfo(){
return "书名: " + this.title + "\n" +
"价钱: " + this.price + "\n";
}
//对象比较函数
public boolean compare(Book book){
if(book == null) return false; //防止空指向异常
else if(book == this) return true; //内存地址相同,自己和自己比较
else if(book.title.equals(this.title) && book.price == this.price) return true;
else return false;
}
}
public class Main {
public static void main(String[] args) {
//实例化书类对象
Book bookA = new Book("java",100);
Book bookB = new Book("python",100);
if(bookA.compare(bookB)){
System.out.println("两本书相同");
}
else {
System.out.println("两本书不相同");
}
}
}