一.NSString 如何输出%
NSLog(@"百分号:89%%");
NSLog(@"反斜杠:\\专治不想吃饭😁");
NSLog(@"双引号:\"不要放弃治疗\"");
控制台打印
2017-05-25 16:40:50.782 5-25-1 可变不可变数组的测试[16825:248496] 百分号:89%
2017-05-25 16:40:50.782 5-25-1 可变不可变数组的测试[16825:248496] 反斜杠:\专治不想吃饭😁
2017-05-25 16:40:50.782 5-25-1 可变不可变数组的测试[16825:248496] 双引号:"不要放弃治疗"
二. 向Dic, NSArry中插入nil 必崩
- 创建字符串,不赋值就是nil。
NSString *lock_id ; // nil
NSLog(@"%@",[lock_id class]);
if (lock_id == nil) {
NSLog(@"哈哈哈哈😁"); // 这句话会被打印
}
- 服务器返回数据如果向下面👇这样子 , 看到 null 没,做个安全判断吧,不让血崩。
{"success":true,"msg":"操作成功!","infor":null} // json串形式
infor = "<null>"; // 字典形式
// 防崩溃处理
if ([infoArray isKindOfClass:[NSNull class]]) {
[JRToast showWithText:@"没有数据" duration:0.5];
return ;
}
3.向字典插入一个nil 对象,崩溃 。 NSArray 也一样
NSMutableDictionary *dic = [NSMutableDictionary dictionary];
NSString *lock_id ; // nil
[dic setObject:lock_id forKey:@"lock_id"]; // 制造一个crash
奔溃信息
reason: '*** setObjectForKey: object cannot be nil (key: lock_id)' // 字典的崩溃信息
reason: '*** -[__NSArrayM insertObject:atIndex:]: object cannot be nil' // 数组的崩溃信息
网友评论