Mic*_*hel 22 int core-data type-conversion 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!)
}
Run Code Online (Sandbox Code Playgroud)
Een*_*dje 35
我错过了什么或不是这么荒谬吗?
let number1: Int32 = 10
let number2 = Int(number1)
Run Code Online (Sandbox Code Playgroud)
错误是你的?在valueForKey之后.
Int初始值设定项不接受选项.
通过做myUnit.valueForKey(“theNUMBER”)?.intValue!你给你一个可选的值和!最后并没有帮助它.
只需替换为:
return Int(myUnit.valueForKey(“theNUMBER”)!.intValue)
Run Code Online (Sandbox Code Playgroud)
但如果您希望它是安全的,您也可以这样做:
return myUnit.valueForKey(“theNUMBER”)?.integerValue ?? 0
Run Code Online (Sandbox Code Playgroud)
为了缩短你的功能,你可以这样做:
func myNumber() -> Int {
let myUnit = self.getObject("EntityName") as! NSManagedObject
return myUnit.valueForKey("theNUMBER")?.integerValue ?? 0
}
Run Code Online (Sandbox Code Playgroud)
Swift 4.0 生成“无法使用类型为 '(() -> Int32) 的参数列表调用类型为 'Int' 的初始化程序”
let number1: Int32 = 10
let number2 = Int(number1)
Run Code Online (Sandbox Code Playgroud)
只需这样做
Int("\(Int32value)")
Run Code Online (Sandbox Code Playgroud)
我无法理解为什么 swift 会让事情变得困难。
| 归档时间: |
|
| 查看次数: |
21901 次 |
| 最近记录: |