java - 检查不同类的两个对象

标签 java

我有三个类(class):

  1. 人类
  2. 父亲
  3. child 。

子类扩展父类,父类扩展人类。

我已经为每个类创建了一些实例并将它们存储到一个 ArrayList 中。

现在我想编写一个方法来检查对象 father1 是否具有与对象 child1 地址字段(类 Father 和 Child 的实例)相同的字段地址(例如:“21 str Goodwin”)并将此方法提供给我ArrayList 并在找到任何结果时打印。

我该怎么做?

为了更清楚起见,让我在这里添加我的代码:

人类类:

  public class Om {
  String nume;
  String prenume;
  String cnp;

Om(String nume,String prenume,String cnp){
this.nume=nume;
this.prenume=prenume;
this.cnp=cnp;

}
@Override
public String toString() {
    return "Numele omului: " + this.nume +"\n"+ "Prenumele omului: " + this.prenume   +"\n"+ "Cnp-ul omului: " + this.cnp + "\n" ;
}


}

父类:

public class Parinte extends Om{
String domiciliu;
Parinte(String nume, String prenume, String cnp, String domiciliu){
    super(nume,prenume,cnp);
    this.domiciliu=domiciliu;
}

@Override
public String toString() {
    return "Numele parintelui: " + nume +"\n"+
            "Prenumele parintelui :" + prenume +"\n"+ 
            "Cnp-ul parintelui: " + cnp +"\n"+ 
            "Domiciliul parintelui: "+domiciliu+"\n"; 
}

}

子类:

public class Copil extends Parinte {
int varsta;
Copil(String nume, String prenume, String cnp, String domiciliu, int varsta){
    super(nume,prenume,cnp,domiciliu);
    this.varsta=varsta;
}
@Override
public String toString() {
    return "Numele copilului: " + nume +"\n"+
            "Prenumele copilului :" + prenume +"\n"+ 
            "Cnp-ul copilului: " + cnp +"\n"+ 
            "Domiciliul compiluiui: "+ domiciliu +"\n"+
             "Varsta copilului: "+varsta+"\n";
}


}

我按字母顺序对列表进行排序的方法:

import java.util.*;

public class comparareNume implements Comparator<Om>{
public int compare(Om om1, Om om2){
    return om1.nume.compareTo(om2.nume);}


}

我的主课:

import java.util.*;
public class main {

public static void main(String[] args) {
    Om om1=new Om("Dubolari", "Dragos", "2006004034120");
    Om om2=new Om("Andronachi","Andrei", "12591295967123");
    Parinte p1=new Parinte("Vreascu","Andy","5845289564684","Al. Cel Bun 13");
    Copil c1 = new Copil("Mamaliga","George","5942356874156","Al. Cel Bun 13", 15);
    List<Om> colectie = new ArrayList<Om>();
    colectie.add(om1);
    colectie.add(p1);
    colectie.add(c1);
    colectie.add(om2);

    comparareNume comparNume = new comparareNume();
    Collections.sort(colectie, comparNume);
    System.out.println(colectie);       
    }


}

最佳答案

FatherObj.getAddress().equals(ChildObj.getAddress())

getAddress() 和字段 address 在 Child 和 Father 中的示例

private String address = "21 str Goodwin"

public String getAddress() {
   return address;
}

关于java - 检查不同类的两个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22670270/

相关文章:

java - 无法在 Person 和 Address 类之间建立 'many-to-many' 关系

java - 通过jSoup从Div标签获取属性值

java - 在输入中为字符设置异常以退出仅接受整数且不停止的程序

java - 限制打开网络驱动器

java - JSpinner 有时无法正常显示

java - Component.getInstance(GateAction.class, true) 抛出 ClassCastException

java - 重新映射 JAX-WS 地址

java - 如何从一行中仅读取特定数量的字节/字符并转到下一行?

java - 使用 Maven 运行 GWTTestCase

java - 具有基本身份验证长密码的 httpurlconnection