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

У меня есть Double, как это:

339.09965653839

Как я могу получить первое число после точки?

0 // desired result

Я пытался найти похожие вопросы, но, к сожалению, я нашелтолько два способа разделить двойные части на две части.Я хотел бы иметь Int, а затем иметь возможность напечатать его в виде строки.

Ответы [ 3 ]

0 голосов
/ 04 декабря 2018

Чтобы получить цифру как Int, вы можете сделать небольшую математику:

let someNum = 339.09965653839
let digit = Int((someNum - Double(Int(someNum))) * 10)

И, конечно, тривиально отображать digit в / в виде строки по мере необходимости.

0 голосов
/ 04 декабря 2018

Или, альтернативно:

let number = 123.456

// 1234 % 123 = 4
let digit = Int(number * 10) % Int(number)
0 голосов
/ 04 декабря 2018

Конвертировать double в строку и извлечь первый символ после точки.

let value = 339.09965653839
let valueInString = "\(value)".split(separator: ".")
print(valueInString[1].first ?? "")
...