0

我想知道我是否可以将以下图表转换为 android 中的 switch-case 语句。我知道我可以用 if-else 做到这一点,但我只是想知道我是否可以......

switch (bodyfat)
case 2-4 : show (Essential Fat);
case 6-13 : show (Athelete Fat);

………… 在此处输入图像描述

4

4 回答 4

2

在这种情况下,您最好坚持使用 if-else 语句。开关盒(我不建议使用)的等效项是这样的:

switch(bodyfat) {
    case 2:
    case 3:
    case 4:
        show (Essential Fat);
        break;
    case 6:
    case 7:
    //...etc.
}

然后它只是通过任何值。但是,您必须为每个值都有一个案例。对于这样的一系列值,您最好坚持使用 if-else。

于 2012-10-22T15:31:59.357 回答
1
switch (bodyfat) {
case 2:
case 3:
case 4: show (Essential Fat); break;

}

而不是这个:

if (bodyfat >= 2 && bodyfat =< 4) {
 show (Essential Fat);
} else if (bodyfat >= 6 && bodyfat =< 13) {
show (Athelete Fat);
}

你可以试试这个。

于 2012-10-22T15:32:38.250 回答
0

您可以通过以下方式使用 switch case 执行此操作:

switch (bodyfat)
    case 2: 
    case 3:
    case 4:
        show (Essential Fat);
        break;
    case 6: 
    case 7:
    case 8:
    case 9: 
    case 10:
    case 11:
    case 12: 
    case 13:
        show (Athelete Fat);
        break;
于 2012-10-22T15:35:15.543 回答
0

我是两个结果检查的三级陈述的粉丝:

IFat result = (bodyfat >= 2 && bodyfat <= 4) ? EssentialFat : AthleteFat;
show(result);

假设接口或子类结构,但我想我会在讨论中包括这个。

于 2012-10-22T19:36:11.550 回答