Как обработать строку в двойное преобразование? - PullRequest
0 голосов
/ 15 апреля 2019

У меня проблема с преобразованием из String в Double.При конвертации возвращается странное значение.У меня есть это в моем большом приложении калькуляции, но я упростила его в эту внутреннюю игровую площадку.

var nineNine : String = "9.9" 
var nineEight : String = "9.8"

var firstNumber = Double(nineNine) as! Double // Returns 9.9
var secondNumber = Double(nineEight) as! Double // Returns 9.8000000001

Я ожидаю выход 9,8, а это 9,8000000001
Проблема в втором числе.Есть идеи как это исправить?:)

1 Ответ

0 голосов
/ 15 апреля 2019

1 - если вы хотите преобразовать String в Double с двумя десятичными значениями и изменить значение double на 2 десятичных. Попробуйте этот код

 /// String to Double
 let yourValue = "9.8"
 let formatter = NumberFormatter()
 formatter.minimumFractionDigits = 2
 if let myInteger = Double(yourValue) {
    let myNumber = NSNumber(value: myInteger)
    let secondNumber = currencyFormatter.string(from: myNumber)
 }
// result = 9.80
...