#import <Foundation/Foundation.h>
typedef enum : NSUInteger {
Dictionary,
Array,
String,
} objectType;
@interface NoEmptyTools : NSObject
+(id)noEmptyWithObject:(id)object;
@end
#import "NoEmptyTools.h"
@implementation NoEmptyTools
+(id)noEmptyWithObject:(id)object{
const NSString *nullStr = @"";
//数据处理
if ([object isKindOfClass:[NSArray class]]) {
NSMutableArray *array = [(NSArray *)object mutableCopy];
for (int index = 0; index<array.count; index++) {
//遍历后每个数据
id arrayObject = array[index] ;
//返回数据
id useObject = [self noEmptyWithObject:arrayObject];
//存档
[array setObject:useObject atIndexedSubscript:index];
}
return array;
}else if([object isKindOfClass:[NSDictionary class]]){
NSMutableDictionary *mutableDic = [(NSDictionary *)object mutableCopy];
for (id key in mutableDic.allKeys) {
//遍历后每个数据
id value = mutableDic[key];
//返回数据
id useObject = [self noEmptyWithObject:value];
//存档
[mutableDic setObject:useObject forKey:key];
}
return mutableDic;
}else if([object isEqual:[NSNull null]]||object == nil){
return nullStr;
}else{
return object;
}
}
@end
本文介绍了一个Objective-C编写的工具类,用于递归地清理字典、数组中的空值、null值,确保数据结构中不含无效数据。此工具类通过遍历数据结构,并对不同类型的对象采用不同的处理方式,实现了灵活而高效的数据清洗。
751

被折叠的 条评论
为什么被折叠?



