Java 布尔等于法
编写一个抽象类项目。抽象类是父类,包含一个equals方法。我的项目的一部分是创建一个Boolean equals方法,该方法比较3个子类的客户机ID(long),以确保它们没有任何重复的ID。在实现代码时遇到问题。以下是我到目前为止的情况Java 布尔等于法,java,Java,编写一个抽象类项目。抽象类是父类,包含一个equals方法。我的项目的一部分是创建一个Boolean equals方法,该方法比较3个子类的客户机ID(long),以确保它们没有任何重复的ID。在实现代码时遇到问题。以下是我到目前为止的情况 public static boolean equals(Object A, Object B, Object C) { if(A.equals(B) || A.equals(C) || B.equals(C)) return t
public static boolean equals(Object A, Object B, Object C) {
if(A.equals(B) || A.equals(C) || B.equals(C))
return true;
else
return false;
}
需要帮助将客户端ID的3个类值放到代码中,然后将代码合并到toString()方法中。您可以将方法更改为以下内容:
public static boolean equals(Object A, Object B, Object C) {
return A != null && B != null && C != null && (A.equals(B) || A.equals(C) || B.equals(C));
}
几件事:
if (cond) {
return true;
} else {
return false;
}
您只需返回cond
:返回cond代码>
A!=空值(&B)=null&&C!=空
A
、B
和C
)上重写equals()
方法,并在equals中包含要使用的字段(在您的示例中仅为id)我没有得到你想要的,但我要试一试:
static class Client {
private long id;
@Override
public boolean equals(Object obj) {
if (this == obj) return true;
if (getClass() != obj.getClass()) return false;
Client oth = (Client) obj;
return oth.id == this.id;
}
Client(long id) {
this.id = id;
}
}
public static boolean equals(Object A, Object B, Object C) {
return A.equals(B) || A.equals(C) || B.equals(C);
}
public static void main(String[] args) {
Object c1 = new Client(4);
Object c2 = new Client(3);
Object c3 = new Client(2);
equals(c1, c2, c3);
}
请让我们理解它。import java.util.Scanner;公共类测试{public static void main(String[]args){Scanner s=new Scanner(System.in);long[]array=new long[3];for(int i=0;i