190 ¿Hay alguna manera de obtener un valor absoluto de un entero? por ejemplo -8 to 8 Ya intenté usar UInt () suponiendo que convertirá el Int a un valor sin signo, pero no funcionó. ios iphone swift Niko Adrianus Yuwono fuente 8 Cast / Convert nunca debe usarse para cambiar el valor Bryan Chen Respuestas: 413 La abs()función estándar funciona muy bien aquí: let c = -8 print(abs(c)) // 8 BS fuente Buena información hombre! ¡Gracias! Aceptaré la respuesta después de 10 minutos :) Niko Adrianus Yuwono ¿Qué se debe importar para usar abs ()? Jarrod Smith 3 @JarrodSmith: import Foundation Adrian 3 Puede importar Darwin o Foundation YYamil ¿No es Darwin parte de la Fundación? Marin 38 Con Swift 5, puede usar una de las dos formas siguientes para convertir un número entero a su valor absoluto. # 1 Obtener el valor absoluto de una Intde magnitudepropiedad IntTiene una magnitudepropiedad. magnitudetiene la siguiente declaración: var magnitude: UInt { get } Para cualquier valor numérico x, x.magnitudees el valor absoluto de x. El siguiente fragmento de código muestra cómo usar la magnitudepropiedad para obtener el valor absoluto en una Intinstancia: let value = -5 print(value.magnitude) // prints: 5 # 2 Obtener el valor absoluto de un método Intfromabs(_:) Swift tiene una función numérica global llamada abs(_:)método. abs(_:)tiene la siguiente declaración: func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric Devuelve el valor absoluto del número dado. El siguiente fragmento de código muestra cómo usar abs(_:)la función global para obtener el valor absoluto en una Intinstancia: let value = -5 print(abs(value)) // prints: 5 Imanou Petit fuente print (abs (Int.min)) no funcionará. ¿Hay alguna solución para Swift 3? Todavía no he actualizado mi proyecto. bibscy 3 Oportunidad perdida de decir "obtener el valor absoluto en una posición Int " LinusGeffarth 1 @bibscy Consulte la explicación de Apple para comprender por qué abs(Int8.min)no puede funcionar y, por lo tanto, crea un error de desbordamiento. Imanou Petit 7 Si desea forzar un número a cambiar o mantenerlo positivo. Aquí está el camino: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar fuente fabs está en desuso Chewie The Chorkie 2 Si desea obtener un valor absoluto de un doble o Int, use fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed fuente Sí, tienes razón, pero mi enfoque estaba en fabs , discúlpame Hamed
413 La abs()función estándar funciona muy bien aquí: let c = -8 print(abs(c)) // 8 BS fuente Buena información hombre! ¡Gracias! Aceptaré la respuesta después de 10 minutos :) Niko Adrianus Yuwono ¿Qué se debe importar para usar abs ()? Jarrod Smith 3 @JarrodSmith: import Foundation Adrian 3 Puede importar Darwin o Foundation YYamil ¿No es Darwin parte de la Fundación? Marin 38 Con Swift 5, puede usar una de las dos formas siguientes para convertir un número entero a su valor absoluto. # 1 Obtener el valor absoluto de una Intde magnitudepropiedad IntTiene una magnitudepropiedad. magnitudetiene la siguiente declaración: var magnitude: UInt { get } Para cualquier valor numérico x, x.magnitudees el valor absoluto de x. El siguiente fragmento de código muestra cómo usar la magnitudepropiedad para obtener el valor absoluto en una Intinstancia: let value = -5 print(value.magnitude) // prints: 5 # 2 Obtener el valor absoluto de un método Intfromabs(_:) Swift tiene una función numérica global llamada abs(_:)método. abs(_:)tiene la siguiente declaración: func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric Devuelve el valor absoluto del número dado. El siguiente fragmento de código muestra cómo usar abs(_:)la función global para obtener el valor absoluto en una Intinstancia: let value = -5 print(abs(value)) // prints: 5 Imanou Petit fuente print (abs (Int.min)) no funcionará. ¿Hay alguna solución para Swift 3? Todavía no he actualizado mi proyecto. bibscy 3 Oportunidad perdida de decir "obtener el valor absoluto en una posición Int " LinusGeffarth 1 @bibscy Consulte la explicación de Apple para comprender por qué abs(Int8.min)no puede funcionar y, por lo tanto, crea un error de desbordamiento. Imanou Petit 7 Si desea forzar un número a cambiar o mantenerlo positivo. Aquí está el camino: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar fuente fabs está en desuso Chewie The Chorkie 2 Si desea obtener un valor absoluto de un doble o Int, use fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed fuente Sí, tienes razón, pero mi enfoque estaba en fabs , discúlpame Hamed
38 Con Swift 5, puede usar una de las dos formas siguientes para convertir un número entero a su valor absoluto. # 1 Obtener el valor absoluto de una Intde magnitudepropiedad IntTiene una magnitudepropiedad. magnitudetiene la siguiente declaración: var magnitude: UInt { get } Para cualquier valor numérico x, x.magnitudees el valor absoluto de x. El siguiente fragmento de código muestra cómo usar la magnitudepropiedad para obtener el valor absoluto en una Intinstancia: let value = -5 print(value.magnitude) // prints: 5 # 2 Obtener el valor absoluto de un método Intfromabs(_:) Swift tiene una función numérica global llamada abs(_:)método. abs(_:)tiene la siguiente declaración: func abs<T>(_ x: T) -> T where T : Comparable, T : SignedNumeric Devuelve el valor absoluto del número dado. El siguiente fragmento de código muestra cómo usar abs(_:)la función global para obtener el valor absoluto en una Intinstancia: let value = -5 print(abs(value)) // prints: 5 Imanou Petit fuente print (abs (Int.min)) no funcionará. ¿Hay alguna solución para Swift 3? Todavía no he actualizado mi proyecto. bibscy 3 Oportunidad perdida de decir "obtener el valor absoluto en una posición Int " LinusGeffarth 1 @bibscy Consulte la explicación de Apple para comprender por qué abs(Int8.min)no puede funcionar y, por lo tanto, crea un error de desbordamiento. Imanou Petit 7 Si desea forzar un número a cambiar o mantenerlo positivo. Aquí está el camino: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar fuente fabs está en desuso Chewie The Chorkie 2 Si desea obtener un valor absoluto de un doble o Int, use fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed fuente Sí, tienes razón, pero mi enfoque estaba en fabs , discúlpame Hamed
7 Si desea forzar un número a cambiar o mantenerlo positivo. Aquí está el camino: abs() for int fabs() for double fabsf() for float Sourabh Kumbhar fuente fabs está en desuso Chewie The Chorkie 2 Si desea obtener un valor absoluto de un doble o Int, use fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed fuente Sí, tienes razón, pero mi enfoque estaba en fabs , discúlpame Hamed
2 Si desea obtener un valor absoluto de un doble o Int, use fabsfunc: var c = -12.09 print(fabs(c)) // 12.09 c = -6 print(fabs(c)) // 6 Hamed fuente Sí, tienes razón, pero mi enfoque estaba en fabs , discúlpame Hamed
Respuestas:
La
abs()
función estándar funciona muy bien aquí:fuente
Con Swift 5, puede usar una de las dos formas siguientes para convertir un número entero a su valor absoluto.
# 1 Obtener el valor absoluto de una
Int
demagnitude
propiedadInt
Tiene unamagnitude
propiedad.magnitude
tiene la siguiente declaración:El siguiente fragmento de código muestra cómo usar la
magnitude
propiedad para obtener el valor absoluto en unaInt
instancia:# 2 Obtener el valor absoluto de un método
Int
fromabs(_:)
Swift tiene una función numérica global llamada
abs(_:)
método.abs(_:)
tiene la siguiente declaración:El siguiente fragmento de código muestra cómo usar
abs(_:)
la función global para obtener el valor absoluto en unaInt
instancia:fuente
abs(Int8.min)
no puede funcionar y, por lo tanto, crea un error de desbordamiento.Si desea forzar un número a cambiar o mantenerlo positivo.
Aquí está el camino:
fuente
Si desea obtener un valor absoluto de un doble o Int, use
fabs
func:fuente
fabs
, discúlpame