草庐IT

ios - 根据一组有序字符串对 NSStrings 的 NSArray 进行排序

我有一个NSArray,其中包含一些NSString对象。例如:NSArray*objects=@[@"Stin",@"Foo",@"Ray",@"Space"];现在我需要根据以下字符串顺序对该数组进行排序。NSArray*sortOrder=@[@"John",@"Foo",@"Space",@"Star",@"Ray",@"Stin"];所以答案应该是NSArray*sorted=@[@"Foo",@"Space",@"Ray",@"Stin"];我怎样才能做到这一点?回答:基于dasblinkenlight的已接受答案,我做了以下操作,它很有魅力。NSMutableArray*

ios - 根据 NSDictionay 中的键对 NSDictionary 的 NSArray 进行分组

我正在尝试过滤掉NSDictionaries的NSArray。在下面的示例中,我希望dict1、dict2和dict4分组在一个数组中,dict3和dict5分组在第二个数组中,dict6分组在第三个数组中。我在NSArray中获取这些数据,所以基本上下面的“orig”数组是我的输入,我知道我需要根据“Name”键进行分组。我没有循环遍历NSArray,而是使用valueForKeyPath返回基于键路径的数组,但这不起作用(日志崩溃-[NSMutableArrayaddObjectsFromArray:]:arrayargumentisnotanNSArray')。任何建议。NSDi

ios - 将 NSDictionary 转换为 NSArray

这两种将NSDictionary转换为NSArray的语法有什么区别?//replyInfo是NSDictionaryNSArray*values=[[NSArrayalloc]init];values=[replyInfovalueForKey:@"response"];//whenthis?values=[replyInfoallValues];//whenthis? 最佳答案 values=[replyInfovalueForKey:@"response"];这会为您提供字典中特定键的值。在values=[replyInfoa

ios - 从现有 NSArray 创建新 NSArray 的标准约定是什么?

假设我有一个NSDictionaries的NSArray,它有10个元素长。我想用每个字典上单个键的值创建第二个NSArray。我能想到的最好的方法是:NSMutableArray*nameArray=[[NSMutableArrayalloc]initWithCapacity:[arraycount]];for(NSDictionary*pinarray){[nameArrayaddObject:[pobjectForKey:@"name"]];}self.my_new_array=array;[arrayrelease];[nameArrayrelease];}但从理论上讲,我应该

Objective-c 静态 NSArray 初始值设定项

我有这段代码(较大部分的一小部分-只是这里显示的麻烦部分):#definekSizeLarge@"large"-(void)determineBestFileSizeWithLimit:(int)limit{staticNSString*largeName=kSizeLarge;staticNSArray*nameArray=@[kSizeLarge];...}编译器喜欢第一个静态变量而讨厌第二个,说Initializerelementisnotacompile-timeconstant从第二行中删除static会使编译器满意。我做错了什么或没有做对? 最佳

ios - Xcode : Expected method to write array element not found on object of type 'NSArray *' 错误

我有另一个数组问题...我声明了一个数组如下:NSArray*sliderValAtTimes;这是有错误的代码:代码:sliderValAtTimes[x]=sliderValue;错误:在“NSArray*”类型的对象上找不到写入数组元素的预期方法声明:intx=0;sliderValue=[[NSStringalloc]initWithFormat:@"%0.0f",self.slider.value];任何帮助都会很棒! 最佳答案 NSArray是不可变的。您不能替换NSArray的元素。你需要一个NSMutableArra

iOS:有没有办法检查 NSArray 对象是否包含某个字符?

我需要一种方法来了解数组的其中一个字符串对象中是否包含字符“@”。下面的代码显然是行不通的,因为它检查一个对象是否只有@符号,而不是检查一个对象是否包含@符号。例如,如果用户有test@test.com,我的if语句将不会检测到它。我需要查看用户是否有电子邮件。我尝试研究如何在stackoverflow上完成此操作,但没有成功。任何提示或建议将不胜感激。if([answercontainsObject:@"@"]){///dofunction.} 最佳答案 您可以检查NSArray是否包含带有containsObject的对象。如果

objective-c - 我如何扩展 NSArray?

这是我的尝试:H文件:@interfaceStrings:NSArray@endM文件:@implementationStrings-(id)init{[selfinitWithObjects:@"One.",nil];returnself;}@end当我运行时,我得到这个:'NSInvalidArgumentException',reason:'*-[NSArrayinitWithObjects:count:]:仅为抽象类定义的方法。定义-[StringsinitWithObjects:count:]!'这就是我所做的:H文件:@interfaceStrings:NSObject+(

iOS 对时间 NSString 的 NSArray 进行排序

我需要对包含时间NSString的NSArray进行排序,例如,NSMutableArray*times=[[NSMutableArrayalloc]initWithObjects:@"09:00AM",@"07:30AM",@"06:45PM",@"05:00PM",@"12:45AM",@"12:45PM",@"01:00AM",@"01:15PM",nil];我需要的是按时间升序对数组进行排序。有什么办法可以做这样的事情吗? 最佳答案 NSMutableArray*times=[[NSMutableArrayalloc]ini

objective-c - 从 NSArray 中的 NSNumber 获取整数值

我有一个NSArray,其中包含具有int值的NSNumber对象:arrayOfValues=[[[NSArrayalloc]initWithObjects:[NSNumbernumberWithInt:1],[NSNumbernumberWithInt:3],[NSNumbernumberWithInt:5],[NSNumbernumberWithInt:6],[NSNumbernumberWithInt:7],nil]autorelease];[arrayOfValuesretain];我正在尝试像这样遍历数组:intcurrentValue;for(inti=0;i我在这里做错