Ber*_*yen 3 nsnumber ios swift
我在我的iOS swift项目中使用了核心数据并声明了一个变量,因为Int32它在类文件中被初始化为NSNumber,当我尝试通过为该类创建一个对象来增加变量时,它表明二进制运算符+ =不能应用于NSNumber的.是否可以增加NSNumber或应该选择Int16或Int64访问变量.
Wye*_*tro 11
这里有三个不同的答案,从简洁到详细:
鉴于NSNumbers是不可变的,只需为它赋予一个等于你想要的新值:
var num : NSNumber = NSNumber(integer: 1) // NSNumber of 1
num = num.integerValue + 1 // NSNumber of 2
Run Code Online (Sandbox Code Playgroud)
或者你可以用另一种方式分配它:
var num : NSNumber = NSNumber(integer: 1) // NSNumber of 1
num = NSNumber(integer: num.integerValue + 1) // NSNumber of 2
Run Code Online (Sandbox Code Playgroud)
或者你可以转换NSNumber为a Int,增加int,并重新分配NSNumber:
var num : NSNumber = NSNumber(integer: 1) // NSNumber of 1
var int : Int = Int(num)
int += 1
num = NSNumber(integer: int) // NSNumber of 2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3462 次 |
| 最近记录: |