我是iOS开发的新手。
我有一个类似这样的元素的NSArray1(parent array)
:
( (name1,url-x,logo-x), (name2,url2,logo2),(name3,url-y, logo-y) )
和
NSArray2(child array)
的元素,如下所示:( (name1,des1,time1), (name1,des2,time2), (name1,des3, time3), (name2,des4,time4), (name2,des5,time5), (name2, des6,time6), (name3,des7,time7), (name3,des8,time8), (name3, des9,time9) )
我想像这样将所有相对的
NSArray2(child array)
元素放入NSArry1(Parent array)
中:( (name1,url-x,logo-x,des1,time1,des2,time2,des3, time3), (name2, url2, logo2, des4, time4, des5, time5, des6, time6), ... )
我该怎么办?
最佳答案
重构您的代码。使用对象而不是嵌套数组可能会更好。
例:
@interface Object1 : NSObject
@property (nonatomic) NSString *name;
@property (nonatomic) NSArray <Object2 *> *objects2; // if you use Xcode 7
// @property (nonatomic) NSArray *objects2; // if you use earlier Xcode // array of Object2
@end
@implementation Object1
@end
还有另一类:
@interface Object2 : NSObject
@property (nonatomic) NSUInteger des;
@property (nonatomic) NSDate time;
@end
@implementation Object2
@end
这样,您可以为给定的名称保留尽可能多的des /时间对,这对于其他开发人员来说更易读,并且肯定会导致更少的错误,崩溃和错误。
在以后的代码中,您只需保留一个
Object1
数组。