从测试文件向类中的Array添加对象?

时间:2016-04-27 11:10:34

标签: java arrays

不确定我应该如何添加到数组中,我被要求从测试文件填充数组,但在类Patient中定义它。有什么想法吗?

   public class Patient
   {
   private String name;
   private int id;
   private int current = 1;
   public Patient(String name, int id)
   {
      this.name = name;
      this.id = id;
      Patient[] patient = new Patient[100];
      String[] Observations;
      System.out.print(patient[0]);
   }
  public String addPatient(String name,int id)
  {
     Patient[current-1] = new Patient(name,id);
  }
} 

// extract from class  PatientRecordSystem
public void addPatient()
{
  String name = "James";
  int id = 10122;
  Patient patient = new Patient(name, id);
}

3 个答案:

答案 0 :(得分:1)

您的问题是您正在定义该列表(或数组)以将Patient对象保存在您的Patient类的构造函数中。

在许多层面上,这是完全错误的。首先 - 一个“患者”应该就是这样 - 一个患者的代表。当你去看医生并成为一名病人时......你是否被要求了解其他100名患者?!然后:你在构造函数中定义的那个数组......只是在构造函数的执行过程中存在。一旦打电话,它就会消失

Patient newPatient = new Patient( ... ) 

回报。

换句话说:您想要考虑负责“管理”多个患者的另一个类。然后你创造“耐心的物体”;并告诉经理他们。那个“经理”然后使用一个数组(或更好的一些更动态的List)来跟踪“管理”的患者。

答案 1 :(得分:0)

无论安德鲁所说的是对的,只要让你轻松一点。使用以下代码

  public class Patient
   {
   private String name;
   private int id;
   private int current = 1;
   private Patient[] patient = new Patient[100];
   public Patient(String name, int id)
   {
      this.name = name;
      this.id = id;

      String[] Observations;
      System.out.print(patient[0]);
   }
  public String addPatient(String name,int id)
  {
     patient[current-1] = new Patient(name,id);
  }
} 

// extract from class  PatientRecordSystem
public void addPatient()
{
  String name = "James";
  int id = 10122;
  Patient patient = new Patient(name, id);
}

答案 2 :(得分:-2)

首先你需要声明数组。

您可以执行以下操作:

Patient[] patients = new Patient[100];

如果你知道数组的大小。

如果你想构建一个动态数组,因为你不知道你将拥有多少元素,你可以做类似的事情。

List<Patient> patients = new ArrayList<Patient>();

然后您可以为数组指定值:

如果您声明了固定数组,则可以执行以下操作:

患者[0] =新患者(姓名,身份证);

另一方面,如果您声明了动态数组,则代码如下所示:

patients.add(new Patient(name, id));