【发布时间】:2018-04-26 01:16:45
【问题描述】:
是否可以在这段代码的 switch 语句中使用数组? 因为我尝试了几次但我做不到,还有另一种方法来声明 BloodType 然后在没有这个数组的情况下为其分配多个 String 值?例如(枚举或数组列表?)我可以在这种情况下使用它们吗?
private String []BloodType = new String[8];
public String[] getBloodType() {
return BloodType;
}
public void setBloodType(String[] BloodType) {
this.BloodType = BloodType;
}
private void BloodType()
{
BloodType[0]="A+";
BloodType[1]="A-";
BloodType[2]="B+";
BloodType[3]="B-";
BloodType[4]="O+";
BloodType[5]="O-";
BloodType[6]="AB+";
BloodType[7]="AB-";
}
public void BloodInfomation () // use BloodType here as Array
{
switch (BloodType) {
case "A+":
BloodCode=1;
System.out.println("Blood Type A+ & Blood Code is : " + BloodCode + "No of Bags avaliable"
+ s.checkStockType.equals("A+"));
break;
case "A-":
BloodCode=2;
System.out.println("Blood Type A- & Blood Code is : " + BloodCode + "No of Bags avaliable"
+ s.checkStockType.equals("A-"));
break;
case "B+":
BloodCode=3;
System.out.println("Blood Type B+ & Blood Code is : " + BloodCode + "No of Bags avaliable"
+ s.checkStockType.equals("B+"));
break;
case "B-":
BloodCode=4;
System.out.println("Blood Type B- & Blood Code is : " + BloodCode + "No of Bags avaliable"
+ s.checkStockType.equals("B-"));
break;
case "O+":
BloodCode=5;
System.out.println("Blood Type O+ & Blood Code is : " + BloodCode + "No of Bags avaliable"
+ s.checkStockType.equals("O+"));
break;
case "O-":
BloodCode=6;
System.out.println("Blood Type O- & Blood Code is : " + BloodCode + "No of Bags avaliable"
+ s.checkStockType.equals("O-"));
break;
case "AB+":
BloodCode=7;
System.out.println("Blood Type AB+ & Blood Code is : " + BloodCode + "No of Bags avaliable"
+ s.checkStockType.equals("AB+"));
break;
case "AB-":
BloodCode=8;
System.out.println("Blood Type AB- & Blood Code is : " + BloodCode + "No of Bags avaliable"
+ s.checkStockType.equals("AB-"));
break;
default:
System.out.println("There is no code for the type you write !!");
break;
}
}
【问题讨论】:
-
你坚持什么?你有错误吗?
-
@GBlodgett 如上所述,我不能在 switch 语句中使用 BloodType 数组作为案例。
标签: java arrays switch-statement