我正在为iPad制作纸牌游戏(恐慌,神经衰弱,压力)。为了赢得你需要一套完整的4张匹配卡,我正在尝试获得一个IF声明,以确保所有4张卡都相同。这是我目前的代码:
if ([cards objectAtIndex:4] && [cards objectAtIndex:5] && [cards objectAtIndex:6] && [cards objectAtIndex:7] == [cards objectAtIndex:5]) {
//Deck one is good!
NSLog(@"P1D1, all clear");
}
卡片是NSMuatableArray。如果我有一个2x2数组,数据为4:3:2:1
我只需要匹配插槽4和2中的卡片,以便上述语句返回true。
答案 0 :(得分:1)
尝试:
if([[cards objectAtIndex:4] isEqual:[cards objectAtIndex:5]] && [[cards objectAtIndex:6] isEqual:[cards objectAtIndex:5]] && [[cards objectAtIndex:7] isEqual:[cards objectAtIndex:5]]){
//Deck one is good!
NSLog(@"P1D1, all clear");
}
希望有帮助!
答案 1 :(得分:1)
或者你也可以这样做:
NSSet *distinctCardSet = [NSSet setWithArray:[cards subarrayWithRange:NSMakeRange(3, 4)]];
if (distinctCardSet.count == 1)
{
//Deck one is good!
NSLog(@"P1D1, all clear");
}