当前位置 : 主页 > 手机开发 > ios >

ios – swift:如何在switch case语句中替换if else

来源:互联网 收集:自由互联 发布时间:2021-06-11
我有这个if if else检查: var aItem: CGFloat = 0if item == 0 { aItem = 457} else if item == 1 { aItem = 576} else if item == 2 { aItem = 758}print(aItem) 我想用switch case语句替换这段代码.怎么做? 我试过了: var aI
我有这个if if else检查:

var aItem: CGFloat = 0

if item == 0 {
    aItem = 457

} else if item == 1 {
    aItem = 576

} else if item == 2 {
    aItem = 758

}

print(aItem)

我想用switch case语句替换这段代码.怎么做?

我试过了:

var aItem: CGFloat = 0

    switch item {
    case _ where item == 0:

        aItem = 457

    case _ where item == 1:

        aItem = 576

    case _ where item == 2:

        aItem = 758

    default:
        print("this is impossible")
    }

它是有效的但是最好的解决方案吗?也许可以以某种方式简化这段代码?

什么是更好用? if else还是切换案例陈述?

它应该写成:

let aItem: CGFloat

switch item {
case 0:
    aItem = 457
case 1:
    aItem = 576
case 2:
    aItem = 758
default:
    aItem = 0
    print("this is impossible")
}

print(aItem)

如果您的商品只能是0,1或2,我会这样做:

let anItem: CGFloat = [457, 576, 758][item]

在这种情况下,使用if else或switch之间几乎没有区别.选择你最喜欢的.如果和切换有优势.使用哪种最符合您需要的代码/逻辑.或者,在这种情况下,不要使用任何一种.

网友评论