2016-06-22 20 views
-1

私はとき、キー「lastNameの私の質問があるスウィフト割り当て値

contactObject.lastName = requestDict.objectForKey("lastName") as! String 

AnyObjectタイプの迅速dictionaryを使用して、特定のキーの値を読み取ると、このような文字列オブジェクトに割り当てています"その時点で私のアプリがクラッシュしたときの辞書には存在しないので、クラッシュを避けるためにチェックを追加しましたが、私はswiftの機能を知っているのでキー" lastName "の辞書からオプションの値を得る方法を知りたいオプションの値を取得する。

それで、そのキーが辞書に存在する場合、どのようにチェックを追加しなくても、その値を読み込んでそれを文字列オブジェクトに割り当てることができます。

どのような助けも非常に認められます。

おかげであなたが求めているもの

答えて

1

イムかなり確実ではありません。 [String:AnyObject]の辞書からlastNameを取得して文字列に変換しようとしている場合は、このようにすることをお勧めします。それが存在する場合にのみ割り当てます。

if let lastName = requestDict["lastName"] as? String { contactObject.lastName = lastName }

アンラップ力は常に危険です。レットとガードlet文を使用すると、オプションのアンラップ時にエラーが伝播するのを防ぐことができます。

0

SwiftyJSONライブラリ(外部フレームワーク)を使用する必要があります。非常にきれいで、ios組み込みシステムのようなタイプチェックは必要ありません。 SwiftyJSONについては

、あなたがしなければならないすべては、それが文字列自体にキーの値を変換します

contactObject.lastName = requestDict["lastName"].stringValue 

です。 辞書の姓に何も含まれていない場合、SwiftyJSONは ""を使用します。とても良いです。

array = dictionary["contactObjects"].arrayValue

は、より多くを学ぶだけでSwifty JSONとオープンgithubのページをGoogleに:

配列を作成するために、あなたのようなものを使用することができます。

これを使用するには、Podfileを作成し、CocoaPodを使用できる場合はポッドを追加するだけです。

+0

downvoters ..コメントを残してください? –