2016-09-13 2 views
0

文字列の配列の文字列を取得しようとしています。それは私が反復したい別々のシンボルです。文字列からシンボルを反復する方法を短くする

let chars = binaryString.characters.map { String($0) } 

    for (index, item) in chars { 

     let activeDay = (index, item) 

     switch activeDay { 
     case (Days.Monday.rawValue, "1"): 
     mondayLabel.textColor = UIColor.blackColor() 
     case (Days.Monday.rawValue, "0"): 
     mondayLabel.textColor = UIColor.grayColor() 

しかし、XcodeのはExpression type '[String]' is ambiguous without more context

+0

[文字列スイフト2.0を繰り返す]の可能な複製(http://stackoverflow.com/questions/30767594/iterate-through-a-string-swift-2-0) – mixel

答えて

1

はスウィフトのすべての利点使用してみてくださいと言う:動作するようにあなたのコードの場合

var binaryString = "12312312312312312" 

let characters = Array(binaryString.characters) 

//Values 
for char in characters { 
    print(char) 
} 

//Keys and values 
for (index, item) in characters.enumerate() { 
    print(index) 
    print(item) 
} 
1

を、あなたはchars配列にenumerate()を追加する必要があります。

for (index, item) in chars.enumerate() { 
    ... 

結果のcharsアレイは、[String]型であり、それをインデックスオブジェクトタプルとして列挙しようとするとエラーが発生します。