package main.java.core;
public class Product {
private int ProdID;
private String ProdName;
public Product(int prodID, String prodName) {
ProdID = prodID;
ProdName = prodName;
}
public int getProdID() {
return ProdID;
}
public void setProdID(int prodID) {
ProdID = prodID;
}
public String getProdName() {
return ProdName;
}
public void setProdName(String prodName) {
ProdName = prodName;
}
@Override
public int hashCode() {
return (this.getProdName()+String.valueOf(this.getProdID())).hashCode();
}
@Override
public boolean equals(Object obj) {
Product getObj=(Product)obj;
if(this.getProdID()==getObj.getProdID() && this.getProdName().equals(getObj.getProdName()))
return true;
return false;
}
}
package main.java;
import main.java.core.Product;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
public class MyIndex {
public static void main(String[] args) throws InterruptedException {
Set<Product> set=new HashSet<Product>();
set.add(new Product(101,"Java图书"));
set.add(new Product(102,"PHP图书"));
set.add(new Product(101,"Java图书"));
for(Product s : set)
{
System.out.println(s.getProdID()+"_"+s.getProdName());
}
}
}
重写 hashCode 和 equals 方法前:
102_PHP图书
101_Java图书
101_Java图书
重写 hashCode 和 equals 方法后:
102_PHP图书
101_Java图书
根据以上原理,判断新闻等内容是否重复,可以在数据库里增加一个字段,保存 hashcode 值,用来进行比对。