我是新来的Java,我正在尝试编写一个扫描某些病人姓名的代码,并要求他们输入(y/n),如果他们是过敏性的,则要打印出来,然后打印出名称为所有患有过敏性葡萄球菌的患者。我刚刚学会了阵列,但我仍然在为Array分配许多值(名称+ y/n)。我需要你的帮助。为数组分配多个值?
非常感谢你:d
我是新来的Java,我正在尝试编写一个扫描某些病人姓名的代码,并要求他们输入(y/n),如果他们是过敏性的,则要打印出来,然后打印出名称为所有患有过敏性葡萄球菌的患者。我刚刚学会了阵列,但我仍然在为Array分配许多值(名称+ y/n)。我需要你的帮助。为数组分配多个值?
非常感谢你:d
没有办法分配多个值到一个数组,但你可以做一些类以包含多个字段的数组。例如,
public class Patient {
public String name;
public boolean isAllergic;
public Patient(String name, boolean isAllergic) {
this.name = name;
this.isAllergic = isAllergic;
}
}
public class Patient_Driver {
public static void main(String[] args) {
Patient[] patients = new Patient[] {
new Patient("Steve", true),
new Patient("Mary", false)
};
for (int i = 0; i < patients.length; i++) {
if (patients[i].isAllergic) {
System.out.println(patients[i].name);
}
}
}
}
输出:
Steve
你需要创建一个表示你的病人的类。然后你就可以有患者
public class Patient{
private String name;
private boolean allergicToGluten;
public Patient(String name, boolean allergicToGluten){
this.name = name;
this.allergicToGluten = allergicToGluten;
}
public boolean isAllergicToGluten(){
return allergicToGluten;
}
public String getName(){
return name;
}
}
----
Patient[] patients = new Patient[patientCount];
阵列如果你不知道patientCount那么你需要resizable-array。过敏患者的
ArrayList<Patient> patients = new ArrayList<Patient>();
// ... reading 'name' and 'isAllergic' from input
patients.add(new Patient(name, isAllergic));
然后你就可以打印清单
for(p : patients){
if (p.isAllergicToGluten())
System.out.println(p.getName());
}
请出示一些代码。 – Thilo
考虑有一个对象数组。这些对象将是您设计和编码的类。 –