我正在尝试比较两个数组以查看它们是否匹配 - 我的测试用例是“获胜者”,我一直在尝试将它们与halArray和playerArray进行比较而没有运气。即使我知道例如playerArray和win1都有相同的对象,它们似乎不匹配并触发我的NSLOG()
这是winners数组的设置方式
NSArray *win = [NSArray arrayWithObjects:@"0",@"1",@"2",nil];
winners = [NSArray arrayWithObjects: win1,win2,win3,win4,win5,win6,win7,win8,nil];
如何填充comp和播放器
-(void)checkSpace:(NSString *)playerName spot:(int)selectedSpot
{
NSString *p = playerName;
int s = selectedSpot;
NSNumber* gameSpace = [NSNumber numberWithInt:s];
if (p == comp)
{
[halArray addObject:gameSpace];
[self checkWin];
}
}
答案 0 :(得分:3)
问题在于您使用NSString
填充win数组,并将它们与您填充NSNumber
的{{1}}进行比较。
他们永远不会匹配。
从中改变这个(和其他胜利):
halArray
到此:
NSArray *win1 = [NSArray arrayWithObjects:@"0",@"1",@"2",nil];
或
将NSArray *win1 = [NSArray arrayWithObjects:[NSNumber numberWithInt:0],
[NSNumber numberWithInt:1],
[NSNumber numberWithInt:2],
nil];
代替NSString
添加到NSNumbers
和halArray
。