gpt4 book ai didi

ios - 有没有一种经典的或很好的方法可以将不同的指令应用于循环的第一个或最后一个元素?

转载 作者:可可西里 更新时间:2023-11-01 05:29:48 25 4
gpt4 key购买 nike

考虑一个循环。我也对快速枚举感兴趣。所以,它可能是

  • for(id obj in objects)
  • [objects enumerate...]

我想知道是否有一种经典的或很好的方法(在 Objective-C 中)来区分循环的第一个元素和其他元素。当然,如果只有一种很好的方法可以将最后一个元素与其他元素区分开来,我也很感兴趣。

是否有经典的或很好的方法将不同的指令应用于循环的第一个或最后一个元素?

最佳答案

使用经典的 for 循环是最简单的,但由于您想要快速枚举,因此您需要自己的计数器:

NSUInteger index = 0;
NSUInteger count = objects.count;
for (id obj in objects) {
if (index == 0) {
// first
} else if (index == count - 1) {
// last
} else {
// all others
}

index++;
}

如果 objects 是一个 NSArray,你可以这样做:

[objects enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
if (idx == 0) {
// first
} else if (idx == objects.count - 1) {
// last
} else {
// all others
}
}];

关于ios - 有没有一种经典的或很好的方法可以将不同的指令应用于循环的第一个或最后一个元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19387385/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com