私はNSDictionaryを持っており、その中に整数からなる配列があり、特定のインデックスで整数を変更しようとしています。私はあなたがオペレータas!
の結果に割り当てることはできませんCannot assign to immutable expression of type Int
なぜintは不変ですか?
var avafdg = object["Availability"] as? NSDictionary //I am importing the Dictionary from Parse, and it is imported correctly.
avafdg![0]![12] as! Int = 1 // I get the error here
無料のヒント:1- NSMutableDictionaryを使用してください。 2-実際には、しないでください:Foundationのクラスの代わりにSwift辞書を使用してください。 3-アンラップを強制しないでください。もし 'if let'のような安全なコードを使用してください。 4 - 配列のような辞書を使用しないでください。必要に応じて配列を使用します。 – Moritz
'として! Int'はコンパイラに強制的に添え字の* result *をキャストするように指示します。したがって、そのステートメントで試して割り当てることは意味がありません。強制的なダウンキャストを取り除いてから、Ericが上で述べたことをすべて実行してください.WindowsでObjective-Cとのインタフェースの手段としてSwiftのNSDictionaryを使用する必要があります(暗黙のうちに行われることはほとんどありません。それを直接使用してください)。 Swiftの土地に戻ったら、それをSwiftコレクションに戻してください。 – Hamish
私は強制的なダウンキャストをやめましたが、今は '不変式のAnyObject型に代入できません。 ' – manatee