Строковое форматирование Double

Я не могу найти способ форматировать Double, ограничивая точность только несколькими позициями после десятичной точки при представлении этого в метке. Возможно, мне не хватает чего-то серьезного, но я не мог найти ничего в официальной документации.

Заранее благодарим за помощь!

Ответ 1

Невозможно сделать это с помощью интерполяции String.

Вы можете найти хорошее обсуждение об этом на этом сообщении форума Apple Dev.

Вы можете использовать NSNumberFormatter или NSDateFormatter для форматирования вывода.

В качестве альтернативы, для использования синтаксиса printf -like, вы все равно можете использовать NSString:

var str = NSString(format: "Hello, world %.2f", 42.12312312313)

Ответ 2

Не уверен, что есть чистый Swift-путь, но вы всегда можете использовать NSStrings +stringWithFormat::

let str = NSString(format: "%.2f", 1.23)