在我更新xCode 6之前,我将双精度转换为字符串没有问题,但现在它给了我一个错误

var a: Double = 1.5
var b: String = String(a)

它给我的错误信息是"double不能转换为string".还有别的办法吗?

推荐答案

它不是强制转换,而是从具有格式的值创建字符串.

let a: Double = 1.5
let b: String = String(format: "%f", a)

print("b: \(b)") // b: 1.500000

使用不同的格式:

let c: String = String(format: "%.1f", a)

print("c: \(c)") // c: 1.5

如果不需要格式化,也可以省略format属性.

Swift相关问答推荐

使SCNode透明,以便您通过它查看其他 node

可编码:将字符串解码为自定义类型(ISO 8601日期,无时间组件)

MyApp类型不符合协议App''''

在解码字符串时需要帮助.

.onReceive NSWindow.CloseNotify是否会为App中的每个窗口调用?

如何在visionOS上删除PhotosPicker背景 colored颜色 ?

如何把多个可观测性变成一个完备性?

如何增加 NSStatusBar 图像大小?

如何根据 DatePicker 中选定的日期实现 TabView 页面切换?

@Binding 在@StateObject 和 View 上被发布了两次?

swift 是否遇到 Java 的 2gb 最大序列化大小问题?

如何打印出此 struct 中的数据?

在 SwiftUI 中的 ForEach 中使用 id 时如何为数组设置动画索引

使用 Swiftui 水平修剪 Shape()

UICollectionView 自定义单元格在 Swift 中填充宽度

如何在 Swift 中遍历 struct 属性?

使用 DispatchTime.now() + float 延迟?

如何在 Swift 中使用 Crashlytics 登录?

如何在 Swift 中将 NSURL 转换为字符串

Swift 2.0 按属性对对象数组进行排序