如何在Swift 4中将Int32转换为String?

时间:2019-05-26 06:33:45

标签: swift

我很难将Int32转换为String。我尝试遵循:

String(cartItem?.quantity)

"\(cartItem?.quantity)" 但没有运气。

cart.quantity的类型为Int32。

数量是CoreData模型中cart的属性。

2 个答案:

答案 0 :(得分:3)

这个问题尚不清楚,但我认为这个问题归结为您无法使用可选值初始化字符串。

所以要么按照@matt的建议进行操作,然后强行拆开cartItem

String(cartItem!.quantity)

或提供默认值

String(cartItem?.quantity ?? 0)

当然,如果您需要处理您可能没有手推车的事实,那么最好这样做

if let cart = cartItem {
    let str = "\(cart.quantity)" //or String(cart.quantity)
    //do stuff with str
} else {
    //handle no cart state
}

答案 1 :(得分:0)

您可以通过声明字符串和数据

var arrayOf32Int: [UInt32] = [1,32,100,984,13,542]

let data = Data(bytes: arrayOf32Int, count: arrayOf32Int.count * MemoryLayout<UInt32>.stride)

let string = String(data: data, encoding: .utf32LittleEndian)!

print(string)