Qual è la funzione che rimuove gli zero finali dai doppi?Swift - Rimuovi gli zeri finali da Double
var double = 3.0
var double2 = 3.10
println(func(double)) // 3
println(func(double2)) // 3.1
Qual è la funzione che rimuove gli zero finali dai doppi?Swift - Rimuovi gli zeri finali da Double
var double = 3.0
var double2 = 3.10
println(func(double)) // 3
println(func(double2)) // 3.1
Si può fare in questo modo, ma restituirà una stringa:
var double = 3.0
var double2 = 3.10
func forTrailingZero(temp: Double) -> String {
var tempVar = String(format: "%g", temp)
return tempVar
}
forTrailingZero(double) //3
forTrailingZero(double2) //3.1
Nota che il formato "% g" passi alla notazione scientifica se il numero diventa troppo grande: 'forTailingZero (123456789) == 1.23457e + 08' :) –
Funziona e nasconde gli zeri. Grazie :) –
Grazie a @MartinR per il suggerimento. –
A * doppia * non ha zeri finali, solo la sua rappresentazione * stringa *. Dai un'occhiata a 'NSNumberFormatter' o' String (format: ...) '. Ci dovrebbero essere già degli esempi per entrambi qui su SO. –
È anche possibile utilizzare numberFormatter come in questo esempio: https://stackoverflow.com/questions/30663996/format-string-with-trailing-zeros-removed-for-x-decimal-places-in-swift/30664610 – wolffan