java - 如何将我的枚举代码转换为开关
问题描述
在我的CustomerTypeApp
课堂上,我需要更改getDiscountPercent
方法以使用 switch 而不是 if 语句链。这是 if 语句版本:
public static double getDiscountPercent(CustomerType ct) {
double discountPercent = 0;
if (ct == CustomerType.RETAIL) {
discountPercent = 0.156;
} else if (ct == CustomerType.TRADE) {
discountPercent = 0.30;
} else if (ct == CustomerType.COLLEGE) {
discountPercent = 0.20;
}
return discountPercent;
}
}
以下是我尝试过的 switch 语句,但收到了错误:
枚举 switch case 标签必须是枚举常量的非限定名称
double discountPercent = 0;
switch(ct) {
case CustomerType.RETAIL :
discountPercent = 0.156;
break;
case CustomerType.TRADE :
discountPercent = 0.30;
break;
case CustomerType.COLLEGE :
discountPercent = 0.20;
break;
default :
discountPercent = 0;
}
return discountPercent;
解决方案
您想切换变量 ct
switch(ct) {
case CustomeType.retail:
/*Command*/
break;
case CustomerType.TRADE:
/*Command*/
break;
default:
/*else*/
}
如果您需要进一步的帮助,请阅读这些 Java 文档
推荐阅读
- netbeans - 如果安装了 nb-javac,NetBeans 插件会失败
- angular - 离子键盘。在输入字段中键入时自动完成闪烁
- wordpress - 航运类公式帮助:如果数量是1-3,收取X金额?
- typescript - 如何解释这个索引signatrue: let value: Dictionary
['foo']? - python - SupervisedDBNClassification' 对象没有属性 'classes_'
- python - 加载数据本地 infie 查询在 mysql shell 中工作但在 python 中不工作
- sql - Sqlite 在一个表达式中同时插入偶数行和奇数行
- python - 将python烧瓶网站映射到域名
- html - 百分号代替常规标签
- html - 纯 HTML 中的水平条