Xcode 在条件语句中强制转换NSSEt

Xcode 在条件语句中强制转换NSSEt,xcode,comparison,nsset,Xcode,Comparison,Nsset,为什么不管索引0处的对象是否在集合中,此语句始终为真 smallestNumberSort是一个NSMutableArray smallestNumberSet是一个NSSet if ([smallestNumberSet containsObject:[NSSet setWithObject:[smallestSortComplete objectAtIndex:0]]] == NO) [outcome removeAllObjects]; 最小代码示例 -(void)Go

为什么不管索引0处的对象是否在集合中,此语句始终为真

smallestNumberSort是一个NSMutableArray

smallestNumberSet是一个NSSet

if ([smallestNumberSet containsObject:[NSSet setWithObject:[smallestSortComplete objectAtIndex:0]]] == NO)
         [outcome removeAllObjects];
最小代码示例

-(void)GoodCoordinates
{
   NSCountedSet *outcome   = [[NSCountedSet alloc] init]; //will contain 4 random plot point between -50 and +50
   NSMutableArray smallestSortComplete = [NSMutableArray alloc] init];
   NSSortDescriptor* sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:nil ascending:YES];


   NSMutableArray smallestCoords = [NSMutableArray alloc] initwithObjects: 
      [NSNumber numberWithInt:1]
      [NSNumber numberWithInt:7]
      [NSNumber numberWithInt:-14]
      [NSNumber numberWithInt:10]
      [NSNumber numberWithInt:-21],nil];

 BOOL (inBounds = NO)
   {   

     [smallestSortComplete removeAllObjects];
    smallestSortComplete = [NSMutableArray arrayWithArray:[outcome allObjects]]; 
    [smallestSortComplete sortUsingDescriptors:[NSArray arrayWithObject:sortDescriptor]];
    
   
               
    if ([smallestCoords containsObject:[smallestSortComplete objectAtIndex:0]] == NO)
       [outcome removeAllObjects];
   else
      inBounds = YES;
}
让我们卸载代码:

id object = [smallestSortComplete objectAtIndex:0];
NSSet *set = [NSSet setWithObject:object];
if ([smallestNumberSet containsObject:set] == NO)
    [outcome removeAllObjects];
新创建的
set
对象不在
smallestNumberSet
中。测试
对象是否位于
smallestNumberSet
中:

id object = [smallestSortComplete objectAtIndex:0];
if ([smallestNumberSet containsObject:object] == NO)
    [outcome removeAllObjects];


在取消嵌套代码后运行了两个测试,但都失败了。我确信这是一个盯着我看的东西,但却让我发疯。@KevinMcFadden请在问题中发布一个帖子。请在
[smallestSortComplete objectAtIndex:0]
位于
smallestCoords
的地方发布一个帖子。
if ([smallestNumberSet containsObject:[smallestSortComplete objectAtIndex:0]] == NO)
    [outcome removeAllObjects];