【发布时间】:2012-09-12 17:25:03
【问题描述】:
如果我有这个方法:
+ (NSDictionary *)dictionaryFromQueryString:(NSString *)queryString
{
NSMutableDictionary *this = [[NSMutableDictionary alloc] init];
NSArray *fields = [queryString componentsSeparatedByString:@"&"];
for(NSString *field in fields)
{
NSArray *fieldParts = [field componentsSeparatedByString:@"="];
NSString *value = @"";
if(fieldParts.count > 1)
{
value = [[fieldParts subarrayWithRange:NSMakeRange(1, fieldParts.count - 1)] componentsJoinedByString:@"="];
}
[this setObject:unescape(value) forKey:unescape(fieldParts[0])];
}
return this;
}
我返回 NSMutableDictionary 而不是 NSDictionary 是不好的做法吗?
我应该将其转换为带有return [this copy]; 的NSDictionary 吗?
【问题讨论】:
标签: objective-c nsdictionary immutability nsmutabledictionary