W Swift, jak sprawdzić, czy ciąg znaków jest prawidłową podwójną wartością? Używam następujące rozszerzenia z this question (ale jako float), ale jeśli wartość nie może być przekształcony, po prostu zwraca wartość „0”:Sprawdź, czy łańcuch jest prawidłową podwójną wartością w Swift
extension String {
var doubleValue:Double? {
return (self as NSString).doubleValue
}
}
Idealnie chciałabym to powrót nil
więc może być złowionych w if-let
, tak:
if let i = str.doubleValue {
object.price = i
} else {
// Tell user the value is invalid
}
if (liczba - podłoga (liczba)> 0,000001) {// 0,000001 mogą być zmieniane w zależności od poziomu precyzji trzeba // podwójna wartość } Try to na zewnątrz? Pochodzi stąd http://stackoverflow.com/questions/25552648/check-if-number-is-decimal-with-swift – Wraithseeker