我正在尝试创建一个类似于内置NSDictionary
类的类,但我想添加一些额外的功能并使其更易于使用。在.m文件中,我有以下代码:
-(void)newEntryWithKey:(NSString *)theKey andValue:(NSString *)theValue{
if (![theKey isEqual:@""]) && (![theValue isEqual:@""]){
[self.keys addObject:theKey];
[self.values addObject:theValue];
self.upperBound++;
}else{
return
}
}
它在“&&”之后的if语句的第二部分开头给出了一个“预期标识符”错误。有人能帮我这个吗?
编辑:原始问题已修复,但现在if语句末尾有一个新错误。
-(void)newEntryWithKey:(NSString *)theKey andValue:(NSString *)theValue{
if (theKey.length && theValue.length) {
[self.keys addObject:theKey];
[self.values addObject:theValue];
self.upperBound++;
}else{
return
} //<-- error here "Expected expression"
}
答案 0 :(得分:0)
通常在括号中应该有一个条件之后。你错过了括号。
答案 1 :(得分:0)
应该是:
if (![theKey isEqual:@""] && ![theValue isEqual:@""]) {
虽然可以更好地检查非空字符串:
if (theKey.length && theValue.length) {
如果if
或theKey
为theValue
,则原始nil
语句会产生错误的结果。我的第二个选项适用于任何一种情况。
更新
更新代码的问题是;
语句后缺少return
。