所以我的问题基本上是这样的,我正在解析一个可变的数字和字符串数组来尝试查找变量。我有一个私有辅助方法,它工作得很好,并且操作(@“+”、@“-”等)和变量(@“x”、@“y”等)之间存在差异。问题是,下面我的 else 块中的代码不起作用。我可以使用 @"x" 或 @"y" 进入 else 语句,但是我尝试创建的 NSSet 不起作用。我只是保持 NSLog(ging) “返回变量为空”。有任何想法吗?
+ (NSSet *)variablesUsedInProgram:(id)program
{
NSMutableArray *stack;
if([program isKindOfClass:[NSArray class]]){
stack = [program mutableCopy];
}
NSSet *returnVariables = nil;
for (int i=0; i<stack.count; i++) {
if ([[stack objectAtIndex:i] isKindOfClass:[NSString class]]) {
if ([self isOperation:[stack objectAtIndex:i]]) {
continue;
} else {
returnVariables = [returnVariables setByAddingObject:[stack objectAtIndex:i]];
if (returnVariables.count == 0) {
NSLog(@"returnVariables is empty");
}
}
}
}
return returnVariables;
}