iOS中NSDictionary中取字符串value值 转数字、布尔、字典、数组操作

  • 应该使用字符串的integerValue、doubleValue、boolValue等方法,而不是简单粗暴的(整型)字符串 方式。
    NSDictionary *dic = @{@"page_num":@"2"};
    NSInteger page = (NSInteger)dic[@"page_num"]; //错误做法
    NSInteger page2 = [dic[@"page_num"] integerValue];
    NSLog(@"%zd %zd", page, page2);
  • 为了方便对网络请求返回的数据进行类型转换,对NSDictionary做了简单扩展,eg:字典中字符串转BOOL类型
- (BOOL)boolForKey:(NSString *)key
{
    id idObj = [self objectForKey:key];
    if(!idObj)
    {
        return NO;
    }
    NSString *strReturn = [[idObj description] lowercaseString];
    return ([strReturn isEqualToString:@"1"] || [strReturn isEqualToString:@"true"] || [strReturn isEqualToString:@"yes"])?YES:NO;
}

  • 更加详细的封装github地址

你可能感兴趣的:(iOS中NSDictionary中取字符串value值 转数字、布尔、字典、数组操作)