string - String类型不符合协议(protocol)sequencetype

标签 string swift sequence

这是代码,我正在尝试制作一个简单的计算器:

@IBAction func btnOperatorInput(sender: UIButton) {
    let op = ("+", "-", "*", "/")

    let nr1 = sender.currentTitle!
    var nr2 = ""
    if sender.currentTitle == nr1{

        display.text! = self.display.text! + nr1
        nrTaped = true

    } else if sender.currentTitle == String(op) {
        nrTaped = false

        nr2 = display.text!
        display.text! = String(String(nr1) + String(op))

    }

    for _ in op.0{

     self.calc.add(Int(nr1)!, secondNumber: Int(nr2)!)

    }



}

我在 for 循环中遇到错误。当我按 + 将数字加在一起时,我不知道如何使用我创建的字符串中的“+”(例如)!

最佳答案

错误很容易解决,你需要访问StringCharacterView:

for _ in op.0.characters {

       self.calc.add(Int(nr1)!, secondNumber: Int(nr2)!)

}

注意:正如另一位评论者在上面询问的那样,我不确定为什么您想要迭代始终是单个且可预测的字符,但我想这可能只是示例代码。

关于string - String类型不符合协议(protocol)sequencetype,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36479826/

相关文章:

java - 嵌套异常是 org.hibernate.exception.SQLGrammarException : ORA-02289: sequence does not exist

java - 获取序列中最大和第二大数

Python转义序列复杂输出

javascript - 如何替换 JavaScript 字符串中除字母和数字之外的所有内容(空格/符号)?

c - 如何将十六进制字符转换为\x90\x90这样的字节?

swift - 当我尝试在 Xcode 中导入 VisualRecognitionV3 时,它给出了用 swift 3.0 编译的错误模块无法在 swift 3.0.2 中导入?

ios - 在 swift 类中实现 AsyncSocket 回调

Python:断言字符串是否与格式匹配

string - MongoDB 字符串到 int

ios - 如何以编程方式在 ScrollView 中嵌入堆栈 View