【发布时间】:2018-10-21 23:27:05
【问题描述】:
我正在开发一个程序,我将一些元素放入 ArrayList 中的对象中......这是我的代码
import java.util.ArrayList;
public class ListaConcepto {
public static void main(String[] args) {
// TODO Auto-generated method stub
ArrayList<CompararListas> Lista = new ArrayList<CompararListas>();
CompararListas obj1 = new CompararListas("abc", 12.25, "lala", 2);
CompararListas obj2 = new CompararListas("abc", 13.50, "lala", 3);
CompararListas obj3 = new CompararListas("poc", 12.50, "jaja", 1);
Lista.add(obj1);
Lista.add(obj2);
Lista.add(obj3);
}
}
然后...这是我的类与接口 Comparable... 我需要一个方法来实现以查看元素是否 EQUALS 然后打印结果。
public class CompararListas implements Comparable<CompararListas> {
private String referencia;
private double monto;
private String descripcion;
private double NumeroParte;
public CompararListas(String referencia, double monto, String descripcion, double numeroParte) {
this.referencia = referencia;
this.monto = monto;
this.descripcion = descripcion;
this.NumeroParte = numeroParte;
}
public double getMonto() {
return monto;
}
public void setMonto(double monto) {
this.monto = monto;
}
public String getDescripcion() {
return descripcion;
}
public void setDescripcion(String descripcion) {
this.descripcion = descripcion;
}
public double getNumeroParte() {
return NumeroParte;
}
public void setNumeroParte(double numeroParte) {
NumeroParte = numeroParte;
}
public String getReferencia() {
return referencia;
}
public void setReferencia(String referencia) {
this.referencia = referencia;
}
@Override
public int compareTo(CompararListas o) {
// TODO Auto-generated method stub
return 0;
}
}
【问题讨论】:
-
问题是?你不知道如何实现equals方法?
-
没错……我想知道
-
这可能会有所帮助:stackoverflow.com/questions/27581/…
-
先上网看看,有几十个tuto,或者使用IDE,点击“实现equals方法”,它会为你做,你会看到
-
CompareTo 基本上是一个相等检查,除了你返回 -1, 0, 1 以便而不是不相等,结果相等,你有 2 个不相等的值,1 和 - 1, 0 表示相等。之所以有 2 个不相等的值,是因为它告诉调用者对象应该在被比较的元素之前还是之后。
标签: java comparator comparable