Swift(for)不可改变的值

问题描述:

我想在ViewController类中创建一个函数。我想循环一个字符串并计算特定字符出现的次数。代码如下所示:Swift(for)不可改变的值

var dcnt:Int = 0 
func decimalCount(inputvalue: String) -> Int { 
    for chr in inputvalue.characters { 
     if chr == “.” { 
      ++dcnt 
     } 
    } 
    return dcnt 
} 

输入字符串来自UILabel!

我得到一个警告:不可变的值'chr'从来没有使用过。

我怎样才能解决这个问题

+0

的Xcode 7甚至显示下一行“修复”:* Unicode的卷曲的报价发现,代之以“'* ...你只需要确认的建议 –

+0

说了。我的能力比较数组元素与“。” –

的问题,所以经常在斯威夫特不在于此。这是卷曲的报价。将这个:

if chr == "." { 
+3

顺便说一句,有一个更好的方法来写这个函数作为一个班轮︰'return inputvalue.characters.filter {$ 0 ==“。”}。count'每当你在Swift中捕捉到一个变量(数组,计数器,值)时,你应该怀疑有一个更好的方法。 – matt

+0

问题的好办法。我希望我明白为什么变量chr在(for)行 –

+0

我解释说,这是Swift误导你。 – matt