如何访问NSArray中的奇数和偶数对象

Hur*_*rkS 2 objective-c nsarray

我有一个NSArray,我想访问NSArray上的奇数和偶数对象,因为它们彼此保持不同的值.

有效地说,这就是我现在所做的一切

- (void)splitArray:(NSArray)array {
   for (id object in array) { // this itterates my array
      // do stuff in here
   }
}
Run Code Online (Sandbox Code Playgroud)

我需要弄清楚如何捕捉偶数或奇数的物体......我在想类似的东西

- (void)splitArray:(NSArray)array {
   int i = 1;
   for (id object in array) { // this itterates my array
      if (i == even) {
        // do stuff here
      }
      else if (i == odd) {
       // do stuff here
      }
     i++
   }
}
Run Code Online (Sandbox Code Playgroud)

它只是我不知道在之间使用什么 if ()

任何帮助将不胜感激

Eri*_*ric 5

要确定整数是偶数还是奇数,请使用模%运算符.如果index % 2 == 0那时它是偶数,否则它很奇怪.

您可以使用enumerateObjectsUsingBlock:循环遍历数组,而无需单独维护索引.

- (void)splitArray:(NSArray *)array {
    [array enumerateObjectsUsingBlock:^(id obj, NSUInteger index, BOOL *stop) {
        if (index % 2 == 0) {
            // even stuff here
        } else {
            // odd stuff here
        }
     }];
}
Run Code Online (Sandbox Code Playgroud)