[英]How can I convert Int32 to Int in Swift?
應該很容易,但我只能找到反向轉換。 如何在Swift中將Int32轉換為Int? 除非問題不同?
我有一個存儲在Core Data中的值,我希望將其作為Int返回。
這是我正在使用的代碼,它不起作用:
func myNumber () -> Int {
var myUnit:NSManagedObject
myUnit=self.getObject(“EntityName”) // This is working.
return Int(myUnit.valueForKey(“theNUMBER”)?.intValue!)
}
我錯過了什么或不是這么荒謬嗎?
let number1: Int32 = 10
let number2 = Int(number1)
錯誤是你的? 在valueForKey之后。
Int初始值設定項不接受選項。
通過myUnit.valueForKey(“theNUMBER”)?.intValue!
給你一個可選的值和! 最后並沒有幫助它。
只需替換為:
return Int(myUnit.valueForKey(“theNUMBER”)!.intValue)
但如果您希望它是安全的,您也可以這樣做:
return myUnit.valueForKey(“theNUMBER”)?.integerValue ?? 0
為了縮短你的功能,你可以這樣做:
func myNumber() -> Int {
let myUnit = self.getObject("EntityName") as! NSManagedObject
return myUnit.valueForKey("theNUMBER")?.integerValue ?? 0
}
Swift 4.0生成“無法使用類型'(() - > Int32)的參數列表調用類型'Int'的初始值設定項”
let number1: Int32 = 10
let number2 = Int(number1)
只需這樣做
Int("\(Int32value)")
我無法理解為什么斯威夫特會讓事情變得困難。
有時“?” 讓事情扭曲,添加“!” 到Int32然后將其轉換為int工作
let number1 = someInt32!
let number2 = Int(number1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.