JAVA | 6 - 对象比较

对象比较

对象比较一定是某一个类自己的功能。

对象比较一定要判断是否为 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("两本书不相同");
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值