我有以下问题: 我有一个有序的NSArray对象,每个对象都包含一个NSDate和一个NSNumber。 我想过滤数组,以便从具有相同值的连续对象中只有FIRST和LAST出现在filteredArray中。通过评估邻居对象来过滤NSArray
例子:
13:01 7.0
13:02 7.1 (1st)
13:03 7.1 (2nd, to be filtered)
13:04 7.1 (3rd)
13:05 7.2
13:06 7.2
13:07 7.3 (1st)
13:08 7.3 (2nd, to be filtered)
13:09 7.3 (3rd, to be filtered)
13:10 7.3 (4th)
13:11 7.1
我想这不能与NSPredicate来完成,那么什么是实现这一目标的最有效方法是什么?
感谢您的帮助!
是的,一个天真的办法是划分阵列与相同的价值观子阵,并采取第一个和最后他们每个人的再次加入他们的行列。但这似乎不是非常高性能。 – akw
是的,它应该是“if(myFilteredArray.count> 1)”。现在很好,谢谢!请删除你的答案的第一部分(最多“take two”) – akw
我发现了一个小错误:不仅要比较倒数第二个元素的值,还要倒数第二个元素的值:if(([secondLastObject value] == [object value])&&([lastObject value] == [object value])){..} – akw