在Swift中将float值转换为String

时间:2014-06-09 15:15:42

标签: swift

我想将-33.861382,151.210316,226.76转换为String。我试图输入它,但没有成功。 如何将浮点值转换为String?

5 个答案:

答案 0 :(得分:54)

如果您想要更多地控制转换方式,可以使用+stringWithFormat上的NSStringNSNumberFormatter

let f = -33.861382
let s = NSString(format: "%.2f", f)

let nf = NSNumberFormatter()
nf.numberStyle = .DecimalStyle
// Configure the number formatter to your liking
let s2 = nf.stringFromNumber(f)

答案 1 :(得分:29)

使用Xcode 6.3,您可以使用.description

将float转换为字符串
var float = -33.861382
var string = "my float is " + float.description

或者您可以使用以下方式快速为您做到:

var string = "my float is \(float)"

答案 2 :(得分:7)

在swift 3中,它很简单,如下所示

let stringFloat =  String(describing: float)

答案 3 :(得分:1)

以下是Swift 3.0中使用NSNumberNumberFormatter转换为带小数的字符串的简单示例,如果您想了解有关格式化程序的更多信息,请link here

let num = NSNumber(value: 8.800000000000001)
let formatter : NumberFormatter = NumberFormatter()
formatter.numberStyle = .decimal
let str = formatter.string(from: num)!
print(str)

输出

8.8

根据我的代码进行任何查询然后发表评论。

答案 4 :(得分:-4)

直接来自developer.apple.com提供的swift编程参考的第6页:

永远不会将值隐式转换为其他类型。如果需要将值转换为其他类型,请显式创建所需类型的实例。

let label = "The width is "
let width = 94
let widthLabel = label + String(width)

摘自:Apple Inc.“The Swift Programming Language。”iBooks。 https://itun.es/us/jEUH0.l

OR

在字符串中包含值有一种更简单的方法:在括号中写入值,并在括号前写入反斜杠()。例如:

let apples = 3
let oranges = 5
let appleSummary = "I have \(apples) apples."
let fruitSummary = "I have \(apples + oranges) pieces of fruit."

摘自:Apple Inc.“The Swift Programming Language。”iBooks。 https://itun.es/us/jEUH0.l