使用Switch语句与If-Else

时间:2015-06-20 21:04:09

标签: ios swift uitableview

我对使用UITableView的switch语句感到困惑。我正在尝试设置我的numberOfRowsInSection函数,但是我的switch语句出现错误" 二元运算符'〜='不能应用于Bool'类型的操作数。和' Int' ':

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

    switch section {
        case section == 0:
            return provinces.count
        case section == 1:
            return territories.count
        default:
            return 0
    }
}

我很困惑,因为section被声明为Int,但错误似乎表明它是一个BOOL。当我使用if-else语句时,它编译得很好:

 func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    if section == 0 {
        return provinces.count
    } else {
        return territories.count
    }
}

我错过了什么?

1 个答案:

答案 0 :(得分:5)

删除section ==

switch section {
    case 0:
        return provinces.count
    case 1:
        return territories.count
    default:
        return 0
}

案例代表section的值。但是你的代码没有意义,因为案例将被评估为true或false,这不是section的可能值。这些值将是bool,因此错误消息谈论bools。