2016-12-06 10 views
-1

私はサービスと呼ばれる変数なので、などを持っている:移行スウィフトに3

私の質問は、私がインターネットで見てきた私はiOSの中のnoobだスウィフト3にこれを移行する方法され
var service: AnyObject = [] //Swift 2.3 

が、それを得ることができませんでした。

PS。エラーが発生する "コンテキストタイプ 'AnyObject'は配列リテラルで使用できません"

ありがとうございます!

答えて

3

いつも間違っていました。初期化時に値を指定しない場合は、「オプション」を使用します。理想的には、AnyObjectなどのキャッチオール型ではなく、値を取得するときの実際の値の型として宣言してください。 - あなたが知っている場合、たとえば、辞書になるだろう - そしてとしてそれを宣言

var service : Any? 

それとも、この事のタイプが知らある場合:しかし、あなたはそれからちょうどAny?を使用し、それを行うことができない場合辞書、おそらくこのように、空の辞書を供給することにより:

var service = [AnyHashable:Any]() 
+0

感謝の男にはもう機能していませんしかし、今、私は "タイプ"を取得していますか?下付きのメンバーはありません " –

+0

あなたは他の回答者に嘘をつきました。配列です。なぜあなたは彼の答えを受け入れなかったのですか? – matt

+0

それは配列ではないので、その理由は –

0

var service = [AnyObject]()となります。

+0

は、鉱山は単なる変数ですが、私はそれを宣言したときに、それを初期化する必要がありますが、この方法は、スウィフト3. –

0

ここスウィフトでそれを使用する例である-3

var service = [AnyObject]() //Swift 3 
service = ["a" as AnyObject,"b" as AnyObject] 
print(service) 

出力:私はこの方法は、配列のためだと思う

a,b 
関連する問題