if(Int(textfield.text!)! != nil) { //value of type 'Int' can never be nil, comparison isn't allowed.
//Rest of the code
}
すべてに許可されていませんが正常に動作しましたが、昨日は、私はこのエラーを取得していた後、私のXcodeを更新しました。助けてください。値がnilになることはありません、比較が迅速2.2
if(Int(textfield.text!)! != nil) { //value of type 'Int' can never be nil, comparison isn't allowed.
//Rest of the code
}
すべてに許可されていませんが正常に動作しましたが、昨日は、私はこのエラーを取得していた後、私のXcodeを更新しました。助けてください。値がnilになることはありません、比較が迅速2.2
あなたは強制的のIntをアンラップしている:
Int(textField.text!)!
//この末尾に感嘆符(バン)が、これは、あなたがそのゼロかどうかを確認しようとしているゼロ
はありませんが、私を信頼し、言っていますか!= nil
と私はあなたがそうのようなoptionalsの適切なアンラップを行うことを示唆している:
if let textInt = textField.text, integerUnwrapped = Int(textInt) {
// Rest of the code
} else {
// Handle if either the text or integer is actually nil
}
場合whateのためにver reason textField.textは文字列を取得しますが、このコードはelse文の中で失敗します。
ただし、強力なオプションのアンラップを処理する方法ではクラッシュする可能性があります。
お返事ありがとうございます。やってみます。このテキストフィールドは数字以外の値を受け入れません。 – vsvishnu
!の使用を避けることの良い習慣!私は怠惰なときに私はそれを使用していますが、解凍するために虎 –
あなたが 'Int(" someValue ")!'を使用すると、コンパイラには 'nil 'ではないことがわかりますので、追加の評価は冗長です。 – Eendje