swift - 我如何在 swift 2 中重写这段和平的代码

标签 swift

我正在尝试制作我的第一个应用程序,但我陷入了困境。我不知道如何在 Swift 2 中重写 Swift 早期版本的这段代码。

func rowCheck(value value:Int) -> (location :String,pattern :String)?{
    let acceptableFinds = ["101","110","011"]
    var findFunc = [checkGornjiR,checkSrednjiR,checkDonjiR,checkLevuK,checkSrednjuK,checkDesnuK,checkLevuD,checkDesnuD]
        for algorithm in findFunc{
            let algorithmResults = algorithm(value:value)
            if find(acceptableFinds,algorithmResults.pattern) { // Error on this line
             return algorithmResults
            }

        }
        return nil

在“if”行中我收到错误:

"Optional type 'C.index?' cannot be used as a boolean; test for '!=nil' instead

如果能得到一点帮助就太好了!谢谢!

最佳答案

您使用contains返回Bool值,如下所示:

   if acceptableFinds.contains(algorithmResults.pattern) {

关于swift - 我如何在 swift 2 中重写这段和平的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35087093/

相关文章:

ios - UIContextualAction 触发 setEditing = true,如何禁用它?

Swift 3.1.1编译错误: unknown key 'SwiftImportAsNonGeneric'

ios - 如何使单元格适合 Collection View

ios - 如何创建指针/传递参数以在 Swift 中运行

ios - 在 Alamofire 闭包中返回 Bool

ios - 如何动态添加swift字典中的值

ios - 将unity 2018项目嵌入Xcode9.4.1

objective-c - Objective-C 有对应的 CF_SWIFT_NAME() 吗?

ios - 通用函数 -> 无法将返回表达式转换为返回类型

ios - NSStreams-code 仅在调试器模式下按预期工作