Int类型的表达模式不能匹配类型(int)的值 - >诠释

时间:2017-06-20 01:41:19

标签: ios swift

以下代码为“Case”旁边的每个值指定错误“Int类型的表达式模式不能匹配type(int) - > Int”的值。我不太确定如何给这个。我想我必须将Int更改为另一种类型。我尝试了一些选项,但没有运气清除错误。传递给变量比较率的值是double值。

     var comparisonRate: Double = 0
        switch IRDComparisonTerm {
        case 12:
            comparisonRate =  oneYear

        case 24:
            comparisonRate =  twoYear
        case 36:
            comparisonRate =  threeYear
        case 48:
            comparisonRate = fourYear
        case 60:
            comparisonRate = fiveYear

        default:
            comparisonRate = 0

        }

2 个答案:

答案 0 :(得分:0)

正如错误所示,IRDComparisonTerm是一个接受Int参数并返回Int参数((Int) -> Int)的函数。

你忘了给这个功能打电话。

答案 1 :(得分:0)

我得到了它的工作。一些编辑。我意识到我通过switch语句传递了错误的值。感谢您的答复。

  switch comparisonTerm {
        case 12:
         comparisonRate = oneYear

        case 24:
            comparisonRate =  twoYear

        case 36:
            comparisonRate =  threeYear
        case 48:
            comparisonRate = fourYear
        case 60:
            comparisonRate = fiveYear

        default:
            comparisonRate = 0

        }

        print(comparisonRate)