草庐IT

ios - 如何计算 NSArray 中的项目数?

我想计算NSArray中的项目数,并根据它执行一些操作。我知道这没什么大不了的,但我无法得到它。请给些建议。 最佳答案 这很简单:intarrayLength=array.count; 关于ios-如何计算NSArray中的项目数?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5782494/

objective-c - NSIntegers 的 NSArray 类别的快速枚举

由于我经常使用NSInteger数组,我为NSArray编写了一个类别(也为NSMutableArray编写了一个类别),它添加了诸如integerAtIndex:、arrayByAddingInteger:等方法。这些方法负责在NSNumber对象中包装/解包NSInteger.我想知道是否有一种方法可以增强我的类别,以便我可以对NSIntegers进行快速枚举。我希望能够写:NSArray*arrayOfIntegers;...for(NSIntegernextIntegerinarrayOfIntegers){}……这样“nextInteger”就从幕后的NSNumber对象中拉

iphone - UITableView 的 reloadRowsAtIndexPaths : (NSArray *) indexPaths failing to cause a reload unless you call it twice?

我有一个UITableViewController在iPad应用程序中管理一个UITableView对象。表格View与其他对象的相当复杂的星座联系在一起。当我要求它重新加载一行时遇到问题,如下所示://indexPathisanNSIndexPathwithindexes0and0.Atthemoment,thisistheonlycellinthetableview.NSArray*array=[NSArrayarrayWithObject:indexPath];[self.tableViewreloadRowsAtIndexPaths:arraywithRowAnimation:

ios - NSPredicate 检查 NSArray 如果对象具有多个 ID 之一

有点难以解释,但我正在尝试使用NSPredicate通过ids过滤具有自定义NSManagedObject的数组。我有一个可以发送更新、删除或添加新对象的服务器,我需要控制JSON文件中的这些对象是否已经存在,如果存在则更新它们,如果不存在则插入到核心数据。我现在正在使用这个谓词:NSPredicate*predicate=[NSPredicatepredicateWithFormat:@"storeId!=%@",[jsonFilevalueForKey:@"Id"];其中jsonFile包含未解析的Store对象。但是有了这个谓词,它会给我一个巨大的数组,因为一个id将不同于一些s

ios - NSArray 包含对象 : faster alternative?

我使用Instruments在我的iOS应用程序上运行了一些,我发现启动时主线程上90%的负载(总共大约1000毫秒)是由containsObject:调用引起的。这是在主线程上,我认为这不太酷。是否有比此方法更快的替代方法?算法还是其他方法?有什么建议吗?更多信息:我再次查看我的代码,我意识到实际上我不需要知道对象的顺序,只要一个对象是该集合的一部分即可。这意味着NSSet会做得很好(而且我猜更快)。对象数量-该集合中很可能有1000多个对象。 最佳答案 如果您需要使用数组,请往下跳一点备选方案您的其他选择可能包括:使用NSDic

ios - 出于内存原因,NSMutableArray 是否比 NSArray 更好?

我有一个关于NSArray和NSMutableArray的问题。我理解两者之间的区别主要是NSArray是不可变的,而NSMutableArray是可变的。就我的研究而言,性能也差不多。有一件事我找不到好的答案,那就是NSMutableArray使用的内存是否比NSArray多,以及NSMutableArray是否比NSArray在内存上更苛刻。非常感谢您的建议和解释。谢谢维克 最佳答案 NSMutableArray使用稍微多一点的内存有两个(呃,四个,看评论)原因:1)因为它可以改变大小,所以它不能存储对象内部的内容,必须存储指向

objective-c - 从数组末尾切片 NSArray

从数组的末尾而不是开头“切片”NSArray的最佳方法是什么(例如,找到包含的最后几个元素的子数组未知长度的NSArray)?在Python中,您可以使用负索引来完成此操作,例如:new_list=old_list[-5:-3]在Objective-C中最自然的方法是什么? 最佳答案 没有什么比得上Python的漂亮语法了,但你可以这样做:NSUIntegercount=[myArraycount];NSArray*slice=[myArraysubarrayWithRange:(NSRange){count-n,n}];您还可以为

objective-c - 根据另一个 NSArray 字符串的排序对自定义对象的 NSArray 进行排序

我有两个NSArray对象,我想对它们进行相同的排序。一个包含NSString对象,另一个包含自定义Attribute对象。这是我的“关键”NSArray的样子://ThemasterorderNSArray*stringOrder=[NSArrayarrayWithObjects:@"12",@"10",@"2",nil];带有自定义对象的NSArray://ThearrayofcustomAttributeobjectsthatIwantsortedbythestringOrderarrayNSMutableArray*items=[[NSMutableArrayalloc]ini

objective-c - 在 ARC 下,如何释放 NSArray 中的元素?

在标准的Objective-C手动内存管理下,建议在thisquestion中提出释放使用初始化的NSArray的方式imageArray=[[NSArrayalloc]initWithObjects:[UIImageimageNamed:@"1.png"],[UIImageimageNamed:@"2.png"],nil];是为了使用[imageArrayrelease];imageArray=nil;鉴于我们不能再在自动引用计数下使用-release,在ARC下释放这个NSArray的建议方法是什么? 最佳答案 要使用ARC,您

iphone - 充满 NSDictionaries 的 NSArray。如何找到对象的索引?

我有一个数组,里面装满了NSDictionaries。我想找到其中一本字典的index,但我对这本字典的了解只是键@"name"的value。我该怎么做? 最佳答案 在theArray中查找第一个字典的索引,其@"name"的值为theValue:NSUIntegerindex=[theArrayindexOfObjectPassingTest:^BOOL(NSDictionary*dict,NSUIntegeridx,BOOL*stop){return[[dictobjectForKey:@"name"]isEqual:theVa