2017-02-22 2 views
-5

私は[Int: Any]()ループ:(:INT、値:任意のキー)プロトコルシーケンスに準拠していない -

私のコードのように辞書があります:タイプ

var test = [Int: Any]() 
test = self.header_all_items[header] as! [Int : Any] 
for tes in test{ 
    for (key:value)in tes{ // error line 
     print(key) 
    } 
} 

私はこのエラーを得ました:

type (key:Int, value: Any) does not conform to protocol sequence 
+0

なぜtes.0を印刷しないのですか? – koropok

+0

あなたは配列として移動しており、辞書として試しています:for(key、value)in test –

答えて

2

あなたのコードがあるべき

var test = [[Int: Any]]() 

//assign your header 

for tes in test{ 

    for (key, value) in tes{ // error line 
     print("\(key)") 
    } 
} 

だから最初にすべての:

  • あなたは辞書の配列だけでなく、辞書持っている必要があります:[[Int: Any]]
  • 私はあなたがを反復処理したいと思いますあなたの最後のforからfor (key, value) in tes
0

を変更し、あなたのもしそうなら、以下のコードを参考にしてください。

let test = self.header_all_items[header] as! [Int : Any] 

for (key, value) in test { 
    print("\(key)") 
} 
関連する問題