webentwicklung-frage-antwort-db.com.de

Swift - In absoluten Wert umrechnen

gibt es eine Möglichkeit, einen absoluten Wert von einer ganzen Zahl zu erhalten?
zum Beispiel 

-8  
to  
 8

Ich habe bereits versucht, UInt () zu verwenden, vorausgesetzt es wird das Int in einen vorzeichenlosen Wert konvertiert, aber es hat nicht funktioniert.

158

Die Standardfunktion abs() funktioniert hier hervorragend:

let c = -8
print(abs(c))
// 8
359
B.S.

Je nach Ihren Anforderungen können Sie mit Swift 4 eine der beiden folgenden Möglichkeiten verwenden, um Ihr Problem zu lösen (funktioniert auch für andere numerische Variablen wie CGFloat, Double usw.):


# 1. Rufen Sie den absoluten Wert einer Int von der magnitude-Eigenschaft ab

Mit Swift 4 verfügt Int über eine magnitude -Eigenschaft. magnitude hat die folgende Deklaration:

var magnitude: UInt { get }

Für jeden numerischen Wert x ist x.magnitude der absolute Wert von x.

Das folgende Code-Snippet zeigt, wie die magnitude-Eigenschaft verwendet wird, um den absoluten Wert einer Int-Instanz abzurufen:

let value = -5
print(value.magnitude) // prints: 5

# 2. Rufen Sie den absoluten Wert einer Int von der abs(_:)-Methode ab

Swift 4 hat eine globale numerische Funktion namens abs(_:) method. abs(_:) hat die folgende Deklaration:

func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric

Gibt den absoluten Wert der angegebenen Zahl zurück.

Das folgende Codefragment zeigt, wie die globale Funktion abs(_:) verwendet wird, um den absoluten Wert einer Int-Instanz abzurufen:

let value = -5
print(abs(value)) // prints: 5
28
Imanou Petit

Wenn Sie eine Zahl erzwingen möchten, um sie zu ändern oder positiv zu halten.
Hier ist der Weg:

abs() for int
fabs() for double
fabsf() for float
3
Sourabh Kumbhar

Wenn Sie einen absoluten Wert von einem Double oder Int erhalten möchten, verwenden Sie fabs func:

var c = -12.09
print(fabs(c)) // 12.09
c = -6
print(fabs(c)) // 6
0
Hamed Akhlaghi