Collection接口

package com.jsu.demo;

import java.util.ArrayList;
import java.util.Collection;

public class ha {
    public static void main(String[] args) {
        Collection<goods>coll=new ArrayList<>();
        goods g1=new goods("Asd","54",12);
        goods g2=new goods("qwe","68",105);
        goods g3=new goods("iuo","102",58);
        coll.add(g1);
        coll.add(g2);
        coll.add(g3);
        goods g4=new goods("iuo","102",58);
        System.out.println(coll.contains(g4));//这里是自定义的对象,所以要在自定义的javabea中重写equals方法,否则会默认使用object中的equals方法,从而造成错误
    }

}
这里是自定义的对象,所以要在自定义的javabea中重写equals方法,否则会默认使用object中的equals方法,从而造成错误

在javabean类中,按住alt+insert,然后选中"equals()and hashCode()”,即可完成自动重写

如下

public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        goods goods = (goods) o;
        return Double.compare(price, goods.price) == 0 && Objects.equals(name, goods.name) && Objects.equals(id, goods.id);
    }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值