2012-11-05 80 views
-4

我想将一个nsarray的值与一个整数进行比较。 nsstring“1dog”被插入到数组字典中。 Xcode拒绝让我比较数组。我会如何处理这个问题?如何将一个nsarray与一个整数进行比较

if (dog == 1) { 
     [switch1 setOn:YES animated:YES]; 
    } 
    else { 
     [switch1 setOn:NO animated:YES]; 
    } 

编辑:该阵列由该代码

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict { 

    if ([elementName isEqualToString:@"doggy"]) { 
     [dog addObject:[[NSDictionary alloc] initWithDictionary:attributeDict]]; 
    } 
} 

狗分配该字符串是从SQL查询,如多值的结果:

$e = $doc->createElement("doggy"); 
    $e->setAttribute('1', $row['1']); 
+0

按值,你的意思是数组的数量? – geraldWilliam

+2

我很努力地看到你的问题和代码之间的联系(它可以简单地写成'[switch1 setOn:dog == 1 animated:YES]',并且如果'dog'实际上表示一个布尔值,可能更简单:'[switch1 setOn:dog animated:YES]')。 –

+0

“数组字典”是什么意思?另外,编辑你的帖子向我们展示将'@“1dog”'插入到数组中的代码。 –

回答

0

从我的理解,你想要检查的是,你有一个'dog'阵列与NSString已插入。你想检查使用的条件是,如果这个'dog'数组中有一个值是从1开始的。

NSString *beginsWithRequirement = [NSString stringWithFormat:@"%d", 1]; 
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF BEGINSWITH[cd] %@", beginsWithRequirement]; 
NSArray *subArray = [dog filteredArrayUsingPredicate:predicate]; 
[switch1 setOn:([subArray count] > 0) animated:YES]; 
0
myArray = [NSMutableArray array]; 
[myArray addObject:[NSNumber numberWithInteger:1234]]; 

//.. 

int theNumber = [[myArray objectAtIndex:0] integerValue]; 
+0

如果我已经在数组对象中有一个数字,那么我怎样才能调用它来比较一组数字? – user1776234

+0

将数字加载到本地存储器中并进行比较。 –

相关问题