将已创建的对象添加到我的Java阵列

问题描述:

我从类Medicos创建了5个对象,并从类Enfermeras创建了5个对象,我如何将这些已经创建的元素添加到数组中?将已创建的对象添加到我的Java阵列

数组类:

public class Metodos { 

    private Medicos [] ListaM = new Medicos [5]; 
    private Enfermeras [] ListaE = new Enfermeras [5]; 
    private Clinica [][] datos = new Clinica [12][30]; 

    public Metodos(){ 
     ListaM[0] = Medicos() = Medico1; 
    } 
} 

医学生类:

public class Medicos { 

    private String Nombre; 
    private long DPI; 
    private String NIT; 
    private boolean Especialista; 
    private int nColegiado; 
    private int salario; 

    public Medicos(String Nombre, long DPI, String NIT, boolean Especialista, 
      int nColegiado, int salario){ 
     this.Nombre=Nombre; 
     this.DPI = DPI; 
     this.NIT = NIT ; 
     this.Especialista = Especialista; 
     this.nColegiado = nColegiado; 
     this.salario = salario; 
    } 

    public String getNombre() { 
     return Nombre; 
    } 
    public void setNombre(String nombre) { 
     Nombre = nombre; 
    } 
    public long getDPI() { 
     return DPI; 
    } 
    public void setDPI(long dPI) { 
     DPI = dPI; 
    } 
    public String getNIT() { 
     return NIT; 
    } 
    public void setNIT(String nIT) { 
     NIT = nIT; 
    } 
    public boolean isEspecialista() { 
     return Especialista; 
    } 
    public void setEspecialista(boolean especialista) { 
     Especialista = especialista; 
    } 
    public int getnColegiado() { 
     return nColegiado; 
    } 
    public void setnColegiado(int nColegiado) { 
     this.nColegiado = nColegiado; 
    } 
    public int getSalario() { 
     return salario; 
    } 
    public void setSalario(int salario) { 
     this.salario = salario; 
    } 

    Medicos Medico1 = new Medicos("Juan Pérez", 1234567870101L, "6799652-3", true, 
      89098, 15000); 

    Medicos Medico2 = new Medicos("Luis Gutiérrez", 9876543260101L, "8964547-3", false, 
      98554, 12000); 

    Medicos Medico3 = new Medicos("Eduardo González", 5642871750101L, "8786456-6", true, 
      5653, 17000); 

    Medicos Medico4 = new Medicos("Guadalupe Torres", 4562973920101L, "6799652-3", true, 
      10098, 17000); 

    Medicos Medico5 = new Medicos("María Castillo", 569395290101L, "8765485-7", false, 
      67965, 13000); 
} 

Enfermeras类别:

public class Enfermeras { 

    private String Nombre; 
    private long DPI; 
    private String NIT; 
    private boolean Intensivista; 
    private int experiencia; 
    private int salario; 

    public Enfermeras(String Nombre, long DPI, String NIT, boolean Intensivista, 
      int experiencia, int salario){ 
     this.Nombre=Nombre; 
     this.DPI = DPI; 
     this.NIT = NIT; 
     this.Intensivista = Intensivista; 
     this.experiencia = experiencia; 
     this.salario = salario; 
    } 

    public String getNombre() { 
     return Nombre; 
    } 
    public void setNombre(String nombre) { 
     Nombre = nombre; 
    } 
    public long getDPI() { 
     return DPI; 
    } 
    public void setDPI(int dPI) { 
     DPI = dPI; 
    } 
    public String getNIT() { 
     return NIT; 
    } 
    public void setNIT(String nIT) { 
     NIT = nIT; 
    } 
    public boolean isIntensivista() { 
     return Intensivista; 
    } 
    public void setIntensivista(boolean intensivista) { 
     Intensivista = intensivista; 
    } 
    public int getExperiencia() { 
     return experiencia; 
    } 
    public void setExperiencia(int experiencia) { 
     this.experiencia = experiencia; 
    } 
    public int getSalario() { 
     return salario; 
    } 
    public void setSalario(int salario) { 
     this.salario = salario; 
    } 

    Enfermeras Enfermera1 = new Enfermeras("Juana Lopez", 5643213450101L, "563269-K", false, 
      2, 6000); 

    Enfermeras Enfermera2 = new Enfermeras("Lidia Mendez", 1246547850101L , "7654376-6" , true, 
      2, 9000); 

    Enfermeras Enfermera3 = new Enfermeras("Miriam García", 6547854370101L, "9876456-8" , false, 
      14, 8000); 

    Enfermeras Enfermera4 = new Enfermeras("Lorna Suarez", 569374160101L, "4567865-8" , true, 
      12, 10000); 

    Enfermeras Enfermera5 = new Enfermeras("Mariela Rodríguez",3254786540101L, "6789654-8" , false, 
      2, 8000); 
} 

Im真正升ost在这里,似乎无法找到一个正确的答案,帮助将非常感激。

首先您需要遵循将变量名称保存为camelcase的java命名约定。

其次,添加对象的数组只是将其分配给一个数组一样的每个元素,

ListaM[0] = Medico1; 

ListaM[1] = Medico2; 

有很多方法可以做到这一点。一种方法是在Metodos Class中创建你的数组,public static。

因此,从您的Medicos/Enfermeras类中,您可以简单地将对象分配到Metodos类的数组中。

例如为Metodos类 改变这种

private Medicos [] ListaM = new Medicos [5]; 

public static Medicos [] ListaM = new Medicos [5]; 

例如对于Medicos类

Medicos Medico1 = new Medicos("Juan Pérez", 1234567870101L, "6799652-3", true, 
        89098, 15000); 

// After Creating the object, assign it   
Metodos.ListaM[0] = Medico1 ; 

另一种方法是,您应该只从Metodos类本身创建对象。

例如在Metodos类中。

public Metodos(){ 
     Medicos Medico1 = new Medicos("Juan Pérez", 1234567870101L, "6799652-3", true, 
       89098, 15000); 
      ListaM[0] = Medico1 ; 
     } 

Medico1,Medico2 ......被decleared为默认字段,不是一成不变的,所以你需要通过他们的类的实例来访问它。
如果你想把两种不同类型的对象放入一个数组中,你需要将这个数组作为它们的超类,例如Object

 Object[] objs = new Object[10]; 
     Medicos medicos = new Medicos("",0,"",false,0,0); 
     objs[0] = medicos.Medico1; 
     objs[1] = medicos.Medico2; 
     ... 
     Enfermeras enf = new Enfermeras("",0,"",false,0,0); 
     objs[5] = enf.Enfermera1; 
     ...