在java中的switch case中使用字符串
在检查 String
时,我需要将以下 if
更改为 switch
-case
, 以提高圈复杂度.
I need to change the following if
's to a switch
-case
while checking for a String
, to improve the cyclomatic complexity.
String value = some methodx;
if ("apple".equals(value)) {
method1;
}
if ("carrot".equals(value)) {
method2;
}
if ("mango".equals(value)) {
method3;
}
if ("orange".equals(value)) {
method4;
}
但我不确定我会得到什么价值.
But I am not sure what value I'm going to get.
推荐答案
Java(版本 7 之前)在 switch/case 中不支持 String.但是您可以通过使用枚举来实现所需的结果.
Java (before version 7) does not support String in switch/case. But you can achieve the desired result by using an enum.
private enum Fruit {
apple, carrot, mango, orange;
}
String value; // assume input
Fruit fruit = Fruit.valueOf(value); // surround with try/catch
switch(fruit) {
case apple:
method1;
break;
case carrot:
method2;
break;
// etc...
}
相关文章