191 czy jest jakiś sposób na uzyskanie wartości bezwzględnej z liczby całkowitej? na przykład -8 to 8 Próbowałem już użyć UInt (), zakładając, że przekształci Int na wartość bez znaku, ale to nie zadziałało. ios iphone swift Niko Adrianus Yuwono źródło 8 obsada / konwersja nigdy nie powinna być używana do zmiany wartości Bryan Chen Odpowiedzi: 414 Standardowa abs()funkcja działa tutaj świetnie: let c = -8 print(abs(c)) // 8 BS źródło Miły człowiek informacji! Dzięki! Przyjmę odpowiedź po 10 minutach :) Niko Adrianus Yuwono Co należy zaimportować, aby użyć abs ()? Jarrod Smith 3 @JarrodSmith: import Foundation Adrian 3 Możesz zaimportować Darwin lub Foundation YYamil Czy Darwin nie jest częścią Fundacji? Marin 38 W Swift 5 możesz użyć jednego z dwóch poniższych sposobów, aby przekonwertować liczbę całkowitą na jej wartość bezwzględną. # 1. Uzyskaj wartość bezwzględną Intodmagnitude nieruchomości Intma magnitudewłaściwość. magnitudema następującą deklarację: var magnitude: UInt { get } Dla każdej wartości liczbowej x, x.magnitudeto wartość bezwzględna x. Poniższy fragment kodu pokazuje, jak używać magnitudewłaściwości w celu uzyskania wartości bezwzględnej dla Intinstancji: let value = -5 print(value.magnitude) // prints: 5 # 2. Uzyskaj wartość bezwzględną Intodabs(_:) metody Swift ma globalną funkcję numeryczną o nazwie abs(_:)metoda. abs(_:)ma następującą deklarację: func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric Zwraca wartość bezwzględną podanej liczby. Poniższy fragment kodu pokazuje, jak używać abs(_:)funkcji globalnej w celu uzyskania wartości bezwzględnej dla Intinstancji: let value = -5 print(abs(value)) // prints: 5 Imanou Petit źródło print (abs (Int.min)) nie będzie działać. Czy jest jakieś rozwiązanie dla Swift 3? Nie zaktualizowałem jeszcze mojego projektu. bibscy 3 Nieodebrana okazja, aby powiedzieć „uzyskać wartość bezwzględną na stanowisku int ” LinusGeffarth 1 @bibscy Zobacz wyjaśnienie Apple, aby zrozumieć, dlaczego abs(Int8.min)nie może działać, i dlatego powoduje błąd przepełnienia. Imanou Petit 8 Jeśli chcesz zmusić liczbę do zmiany lub pozostawić ją dodatnią. Oto sposób: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar źródło fabs jest przestarzałe Chewie The Chorkie 2 Jeśli chcesz uzyskać wartość bezwzględną z podwójnej lub Int, użyj fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed źródło Tak, masz rację, ale skupiłem się na fabs, przepraszam Hamed
414 Standardowa abs()funkcja działa tutaj świetnie: let c = -8 print(abs(c)) // 8 BS źródło Miły człowiek informacji! Dzięki! Przyjmę odpowiedź po 10 minutach :) Niko Adrianus Yuwono Co należy zaimportować, aby użyć abs ()? Jarrod Smith 3 @JarrodSmith: import Foundation Adrian 3 Możesz zaimportować Darwin lub Foundation YYamil Czy Darwin nie jest częścią Fundacji? Marin 38 W Swift 5 możesz użyć jednego z dwóch poniższych sposobów, aby przekonwertować liczbę całkowitą na jej wartość bezwzględną. # 1. Uzyskaj wartość bezwzględną Intodmagnitude nieruchomości Intma magnitudewłaściwość. magnitudema następującą deklarację: var magnitude: UInt { get } Dla każdej wartości liczbowej x, x.magnitudeto wartość bezwzględna x. Poniższy fragment kodu pokazuje, jak używać magnitudewłaściwości w celu uzyskania wartości bezwzględnej dla Intinstancji: let value = -5 print(value.magnitude) // prints: 5 # 2. Uzyskaj wartość bezwzględną Intodabs(_:) metody Swift ma globalną funkcję numeryczną o nazwie abs(_:)metoda. abs(_:)ma następującą deklarację: func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric Zwraca wartość bezwzględną podanej liczby. Poniższy fragment kodu pokazuje, jak używać abs(_:)funkcji globalnej w celu uzyskania wartości bezwzględnej dla Intinstancji: let value = -5 print(abs(value)) // prints: 5 Imanou Petit źródło print (abs (Int.min)) nie będzie działać. Czy jest jakieś rozwiązanie dla Swift 3? Nie zaktualizowałem jeszcze mojego projektu. bibscy 3 Nieodebrana okazja, aby powiedzieć „uzyskać wartość bezwzględną na stanowisku int ” LinusGeffarth 1 @bibscy Zobacz wyjaśnienie Apple, aby zrozumieć, dlaczego abs(Int8.min)nie może działać, i dlatego powoduje błąd przepełnienia. Imanou Petit 8 Jeśli chcesz zmusić liczbę do zmiany lub pozostawić ją dodatnią. Oto sposób: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar źródło fabs jest przestarzałe Chewie The Chorkie 2 Jeśli chcesz uzyskać wartość bezwzględną z podwójnej lub Int, użyj fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed źródło Tak, masz rację, ale skupiłem się na fabs, przepraszam Hamed
38 W Swift 5 możesz użyć jednego z dwóch poniższych sposobów, aby przekonwertować liczbę całkowitą na jej wartość bezwzględną. # 1. Uzyskaj wartość bezwzględną Intodmagnitude nieruchomości Intma magnitudewłaściwość. magnitudema następującą deklarację: var magnitude: UInt { get } Dla każdej wartości liczbowej x, x.magnitudeto wartość bezwzględna x. Poniższy fragment kodu pokazuje, jak używać magnitudewłaściwości w celu uzyskania wartości bezwzględnej dla Intinstancji: let value = -5 print(value.magnitude) // prints: 5 # 2. Uzyskaj wartość bezwzględną Intodabs(_:) metody Swift ma globalną funkcję numeryczną o nazwie abs(_:)metoda. abs(_:)ma następującą deklarację: func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric Zwraca wartość bezwzględną podanej liczby. Poniższy fragment kodu pokazuje, jak używać abs(_:)funkcji globalnej w celu uzyskania wartości bezwzględnej dla Intinstancji: let value = -5 print(abs(value)) // prints: 5 Imanou Petit źródło print (abs (Int.min)) nie będzie działać. Czy jest jakieś rozwiązanie dla Swift 3? Nie zaktualizowałem jeszcze mojego projektu. bibscy 3 Nieodebrana okazja, aby powiedzieć „uzyskać wartość bezwzględną na stanowisku int ” LinusGeffarth 1 @bibscy Zobacz wyjaśnienie Apple, aby zrozumieć, dlaczego abs(Int8.min)nie może działać, i dlatego powoduje błąd przepełnienia. Imanou Petit 8 Jeśli chcesz zmusić liczbę do zmiany lub pozostawić ją dodatnią. Oto sposób: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar źródło fabs jest przestarzałe Chewie The Chorkie 2 Jeśli chcesz uzyskać wartość bezwzględną z podwójnej lub Int, użyj fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed źródło Tak, masz rację, ale skupiłem się na fabs, przepraszam Hamed
8 Jeśli chcesz zmusić liczbę do zmiany lub pozostawić ją dodatnią. Oto sposób: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar źródło fabs jest przestarzałe Chewie The Chorkie 2 Jeśli chcesz uzyskać wartość bezwzględną z podwójnej lub Int, użyj fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed źródło Tak, masz rację, ale skupiłem się na fabs, przepraszam Hamed
2 Jeśli chcesz uzyskać wartość bezwzględną z podwójnej lub Int, użyj fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed źródło Tak, masz rację, ale skupiłem się na fabs, przepraszam Hamed
Odpowiedzi:
Standardowa
abs()
funkcja działa tutaj świetnie:źródło
W Swift 5 możesz użyć jednego z dwóch poniższych sposobów, aby przekonwertować liczbę całkowitą na jej wartość bezwzględną.
# 1. Uzyskaj wartość bezwzględną
Int
odmagnitude
nieruchomościInt
mamagnitude
właściwość.magnitude
ma następującą deklarację:Poniższy fragment kodu pokazuje, jak używać
magnitude
właściwości w celu uzyskania wartości bezwzględnej dlaInt
instancji:# 2. Uzyskaj wartość bezwzględną
Int
odabs(_:)
metodySwift ma globalną funkcję numeryczną o nazwie
abs(_:)
metoda.abs(_:)
ma następującą deklarację:Poniższy fragment kodu pokazuje, jak używać
abs(_:)
funkcji globalnej w celu uzyskania wartości bezwzględnej dlaInt
instancji:źródło
abs(Int8.min)
nie może działać, i dlatego powoduje błąd przepełnienia.Jeśli chcesz zmusić liczbę do zmiany lub pozostawić ją dodatnią.
Oto sposób:
źródło
Jeśli chcesz uzyskać wartość bezwzględną z podwójnej lub Int, użyj
fabs
func:źródło
fabs
, przepraszam