nilを設定したデフォルト値である場合、私は、このコードの一部を持っている:スウィフト値が代わりに
let strValue = String()
textfield.stringValue = strValue!
問題はstrValue
がnilにできることです。このため
私はこのようにそれを確認してください。
if strValues.isEmpty() {
textfield.stringValue = ""
} else {
textfield.stringValue = strValue!
}
しかし、私がこれを行うための迅速かつ簡単な方法?
私はそれを解決するために??
のようなものを読んでいます。しかし、私はそれを使用する方法を知らない?
更新 多くのフィードバックに感謝します。 今私は理解していない??この状況で私はそれをどのように認識していますか?
let person = PeoplePicker.selectedRecords as! [ABPerson]
let address = person[0].value(forProperty: kABAddressProperty) as?
ABMultiValue
txtStreet.stringValue = (((address?.value(at: 0) as! NSMutableDictionary).value(forKey: kABAddressStreetKey) as! String))
私はどのように使用できますか?私のコードの最後の行に演算子?
更新日2 よろしいですか?
あなたはこのように行うことができますが、あなたのstrValueには、オプションのタイプでなければなりませんtxtStreet.stringValue = (((adresse?.value(at: 0) as? NSMutableDictionary)?.value(forKey: kABAddressStreetKey) as? String)) ?? ""
あなたは 'nil'または空の文字列' "" 'を意味するのですか? – Sweeper
nil coalescing演算子は、ジョブを簡潔に実行します。 'textField.stringValue = strValue ?? "" ' – Rob
おそらく、[Swiftのオプションのデフォルト値を提供する](https://stackoverflow.com/q/24099985/2976878)と重複していますが、' strValue'はオプションではないので質問は意味をなさない。 – Hamish