nsnumber相关内容
在我的应用程序中,我在比较两个 NSNumber 对象时不小心使用了“==",如下所示: NSNumber *number1;NSNumber *number2; 后来,在设置了这些对象的 int 值之后,我不小心做了这个: if (number1 == number2) {NSLog(@"他们是平等的");} 而且,令人困惑的是,它奏效了!我可以发誓我被教导这样做: if (numbe
..
首先我承认我的无知,在我从事项目的几个月里,我学到了关于 Objective-C 的所有知识.我还发现,在我使用过的任何其他语言中,Objective-C 似乎使简单的事情变得复杂,这让我感到非常沮丧.这个问题就是一个例子…… 在第一次运行时,我的应用程序下载了一组 JSON,用于填充 CoreData 存储.我使用 Obj-C/JSON 库 (CJSONDeserializer) 将 JS
..
我有一个简单的问题(我认为):我正在尝试将 NSNumber 与 int 进行比较,看看它是 0 还是 1.代码如下: id i = [字典 objectForKey:@"error"];//类 = NSCFNumberNSLog(@"%@ == 0 -> %@", i, i == 0);NSLog(@"%@ == 0 -> %@", i, [i compare:[NSNumber number
..
我有一个滑块可以将浮点数从 1 更改为 10,但我想保存此值并在所有视图控制器中使用它,因此我将该浮点数保存为模型类中的 NSNumber (settingsData.sensitivitySliderSettingValue). 我试图在每次更改时将更新后的滑块值输出到控制台,但是它只是设置为 0 而不是 0 到 10.我不明白为什么会这样...... 这是我的代码: -(IBAc
..
自从 iOS 5 发布以来,我的进度条有点问题.下面的代码在 iOS 5 之前运行良好,但在 iOS 5 中,进度条不再显示在循环中设置的新进度. 代码应该是这样工作的: 创建进度条(工作) 在新的后台进程中:将初始进度设置为 0.25(有效) 在同一后台进程中:通过循环更新进度(在 iOS 4 中工作) 这是栏初始化的代码: //创建进度条UIProgressView *
..
我有一个 Objective-C 程序,我正在使用 ARC(自动引用计数),它在第 23 行引发了分段错误(参见下面的程序). 问题1)为什么会出现分段错误? 下面是程序: #import@界面汽车:NSObject@property (weak) NSNumber* 门;@结尾@实施汽车@合成门;@结尾主函数(){系统(“清除");
..
如何将所有超过 3 位的数字转换为 4 位或更少的数字? 这正是我的意思: 10345 = 10.3k10012 = 10k123546 = 123.5k4384324 = 4.3m 四舍五入并不完全重要,而是一个额外的好处. 我已经研究过 NSNumberFormatter 但没有找到合适的解决方案,而且我还没有在 SO 上找到合适的解决方案.非常感谢任何帮助,谢谢! 解决
..
我在尝试做一些应该很容易的事情时感觉很糟糕.我的 NSNumber 值为 32025.89 秒.我需要用小时、分钟、秒来表示.有什么方法可以吐出来吗?我似乎找不到合适的格式化程序. 解决方案 您是否尝试过从中创建 NSDate 并使用 NSDateFormatter 打印它? NSDate *date = [NSDate dateWithTimeIntervalSince1970:[th
..
包含 Bool 的 NSNumber 很容易与可以包装在 NSNumber 类中的其他类型混淆: NSNumber(bool:true).boolValue//trueNSNumber(integer: 1).boolValue//真NSNumber(integer: 1) as?布尔//真NSNumber(bool:true) 作为?整数//1NSNumber(bool:true).isEqu
..
如何确定 Cocoa NSNumber 是否代表 NaN(不是数字)? 例如,当我解析包含无效(非数字)内容的字符串时,就会出现这种情况. 解决方案 所以,我发现类属性 [NSDecimalNumber notANumber] 就是为了这个目的.在某些语言中 NaN != NaN,但在 Cocoa 中并非如此.
..
现在这一定很容易,但是如何将两个 NSNumber 相加?就像: [一个 floatValue] + [两个 floatValue] 还是存在更好的方法? 解决方案 确实没有更好的方法,但是如果可以避免的话,您确实不应该这样做.NSNumber 作为标量数字的包装器存在,因此您可以将它们存储在集合中并与其他 NSObjects 以多态方式传递它们.它们并没有真正用于在实际数学中存储数字
..
如何转换包含多个任何原始数据类型(例如int、float、char)的NSStringcode>、unsigned int 等)?问题是,我不知道字符串在运行时将包含哪种数字类型. 我有一个想法,但我不确定这是否适用于任何类型,也适用于无符号和浮点值: long long scanNumber;NSScanner *scanner = [NSScannerscannerWithString
..
在 Core Data 中,我将许多属性声明为 Integer 64,然后通过 NSNumber 属性访问(这是默认设置). 我是否通过以下方式存储和访问这些值是否重要: NSNumber *mySetValue = [NSNumber numberWithInt:someIntValue];[myObject setMyNumberProperty:mySetValue];int myR
..
以下方法从 UITextField 获取输入并将其格式化以进行显示.这段代码多年来一直完美运行,但刚刚在使用 iOS 8.1 的 iPhone 6 Plus 上报告了一个问题.用户每次都会发生这种情况,但我无法重现它.我相信这与 iOS 8 上的 NSNumber/NSDecimalNumber 转换和格式有关,也许是针对 64 位应用程序/设备. 用于输入的键盘是数字小键盘,因此可以在文本
..
对 NSNumber 有一些扩展: extension NSNumber {func factorialF() ->NS编号{返回 tgamma(self.doubleValue + 1)}} 然后我在计算中使用这个扩展 var stringFunction: String = "FUNCTION(10,'factorialF')"var expn: NSExpression = NSExp
..
为什么 NSNumber 是不可变的?有充分的理由吗?因为现在我正在考虑创建自己的类只是为了可变性. 解决方案 数字是一种非常基本的数据类型.一个数字就是——一个数字.如果你改变它,它只是碰巧是别的东西.一个数字根本无法改变. 将其与更复杂的数据进行比较,其中对象本身仍然代表相同的事物.
..
我想将字符串转换为电话号码格式.例如,我有一个字符串,其中包含值“456897012".现在我想将其转换为电话号码格式,如 (456)897-012.那么这个过程是什么?我怎样才能做到这一点? 解决方案 我想这样的事情应该可以解决; NSString *unformatted = @"5129876985";NSArray *stringComponents = [NSArray arr
..
在 C# 中,我可以通过以下方式将字符串中的任何字符转换为整数 intS="123123";国际我= 3;Convert.ToInt32( intS[i].ToString()); Objective-C 中这段代码的最短等价物是什么? 我见过的最短的一行代码是 [NSNumber numberWithChar:[intS characterAtIndex:(i)]] 解决方案 这
..
这应该很简单,但有些东西阻止了我使用 NSPredicate 通过 NSNumber 过滤自定义对象数组.也许它与从 JSON 转换时的数据类型有关,但我无法弄清楚. 我从 JSON 中的自定义对象数组中下载数据,如下所示: {"hid":"47","public":"1"} 解析 JSON 的代码如下所示: if (feedElement[@"public"] && ![feedE
..
我正在尝试使用 NSMutableArray 的 NSMutableArray 存储数组 int[9][9],其中我存储了数组中的 81 个整数: - (void)awakeFromNib {//初始化矩阵for (int i = 0; i 当 saveGrid 第一次被awakeFromNib 方法调用时,它起作用了.但是当我更改矩阵时,它再次调用 saveGrid,这次我收到此错误:
..