有这样一段代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
NSDictionary* items2=[NSDictionary dictionaryWithObjectsAndKeys:
[d objectForKey:@"GZDBH"],@"工作单编号",
[d objectForKey:@"LDSJ"],@"来电时间",
[d objectForKey:@"SLWCSJ"],@"受理完成时间",
[d objectForKey:@"SLR"],@"受理人",
[d objectForKey:@"ZJHM"],@"主叫号码",
[d objectForKey:@"LXR"],@"联系人",
[d objectForKey:@"LXDH"],@"联系电话",
[d objectForKey:@"BXDZ"],@"报修地址",
[d objectForKey:@"CLLX"],@"故障类型",
[d objectForKey:@"JRLX"],@"接入类型",
[d objectForKey:@"CLQY"],@"处理区域",
[d objectForKey:@"FWJB"],@"服务级别",
[d objectForKey:@"JJCD"],@"紧急程度",
[d objectForKey:@"YXFW"],@"影响范围",
[d objectForKey:@"QKMS"],@"受理情况",
nil];
|
但是后来发现items2中始终只有一个对象“工作单编号“,检查后发现,其中“来电时间”对象是空,而dictionaryWithObjectsAndKeys方法在遇到nil对象时,会以为是最终的结束标志。于是items中只放了一个对象就初始化结束了,而且不管编译和运行中都不会报错,这样的bug显然很隐蔽。
分享到:
相关推荐
4. **注意事项**: - 保存数据时确保文件路径正确,且有写权限。 - 当处理大文件或性能敏感的场景时,避免直接使用`dataWithContentsOfFile:`和`writeToFile:atomically:`,因为它们会阻塞主线程。考虑使用异步...
- dictionaryWithObjectsAndKeys: 初始化字典时设置键值对; - count: 返回字典中键值对的数量; - keyEnumerator: 返回一个用于枚举字典键的NSEnumerator对象; - objectsForKeys:notFoundMarker: 根据给定键数组...
注意,iOS的安全最佳实践建议不要在应用本地存储私钥,而是将其存储在服务器上,只在需要时通过安全通道获取。此外,公钥也可以用Base64编码后以字符串形式在网络上传输。 总结,iOS中的RSA公私钥生成涉及到...
- **注意事项**: 在使用 ARC 时通常不需要手动调用。 **3. AutoreleasePool** - **作用**: 延迟释放对象,直到当前的 autorelease pool 被释放。 - **使用场景**: 在循环或批量操作中,减少内存峰值。 **4. ...
需要注意的是,当涉及到文件上传时,通常会使用`multipart/form-data`格式的请求体。 #### 六、设置请求头 除了基本的GET和POST请求之外,有时还需要设置特定的请求头来满足服务器的要求。例如,在上面的POST请求...
7. NSLog的格式化字符串:正确使用NSLog输出字符串时,需要使用正确的格式化占位符,%@用于输出对象。 8. Objective-C的导入语法:Objective-C中使用#import语法导入头文件,而C语言使用#include。#import可以避免...
[NSKeyedArchiver archiveRootObject:[NSDictionary dictionaryWithObjectsAndKeys:@"username", @"username", @"password", @"password", nil] toFile:@"user.plist"]; // 加载数据 NSDictionary *userInfo = ...
例如,可以使用`@{}`语法创建一个包含键值对的字典,或者通过`NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:...];`来初始化一个字典对象,其中`objects`和`keys`参数分别指代值和键的...
- **类型安全**:使用`NSNumber`时,编译器会在转换类型时进行检查,增加了代码的安全性。 #### 2. 使用`NSLog`函数输出浮点类型并四舍五入 要在`NSLog`中输出一个浮点数并使其四舍五入到一位小数,可以先使用`...
- **`NSDictionary`:** 可以通过 `[NSDictionary dictionaryWithObjectsAndKeys:]` 或者 `@{@"zs": @"zhaosi", @"ls": @"lisi"}` 来创建不可变字典。 #### 8. 集合对象的内存管理 (MRC) - **加入集合:** 当对象...
NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"Value1", @"Key1", @"Value2", @"Key2", nil]; [dict setObject:@"NewValue" forKey:@"NewKey"]; // 插入新的键值对 ``` 三、...
- **[NSDictionary dictionaryWithObjectsAndKeys:ankush, @"TA", janestudent, @"Student", nil];** - 用键值对创建`NSDictionary`。 - **[NSArray arrayWithContentsOfFile:(NSString *)path];** - 从文件路径...
如何使用 : 第 1 步:将 \classes\ 文件夹复制到您的项目中 第 2 步:导入 LCSoapDelegate.h 第 3 步:实施协议 第 4 步:创建您的肥皂参数,例如: NSString *xmlns = @" "; NSString *method = @"SoapMethod"; ...
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:@"Peter", @"first_name", @"Smith", @"last_name", nil]; id first_name = [dict objectForKey:@"first_name"]; NSString *key; for (key in ...
在读取json文件时,首先从文件中读取NSData对象,然后使用NSJSONSerialization类将其转化为foundation对象: ```objectivec NSData *jsonData = [[NSFileManager defaultManager] contentsAtPath:jsonPath]; id ...
Objective-C中的语法糖是编程语言中的一种特性,它使得代码更加简洁、易读,而不会改变语言...然而,使用时也需要注意,虽然语法糖让代码看起来更短,但过度依赖可能会降低代码的清晰度,因此在实际开发中应适度使用。
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys: @"title", @"title", @"desc", @"desc", @"price", @"price", nil]; NSArray *myProduct = [NSArray arrayWithObjects:dict, dict, dict, ...
XmlDictionary = [NSDictionary dictionaryWithObjectsAndKeys: data.user,@"kUsers", data.title,@"kTitles", data.content,@"kContents", nil]; [self performSelectorInBackground:@selector(parsedXml:) ...
在iOS开发中,`...请注意,从iOS 8开始,Apple推荐使用`UIAlertController`替代`UIAlertView`,因为它提供了更强大的自定义和布局能力。不过,对于兼容旧版本iOS的应用,`UIAlertView`仍然是一个有效的选择。