0

我正在开发一个处理产品的 iOS 应用程序。这些产品显然可以有尺寸和颜色(例如衣服)。现在我需要一个好的数据结构来存储当前产品的可用颜色和尺寸(一次一个产品)。价格也必须是数据结构的一部分,因为每个颜色-尺寸组合可能有不同的价格,以及指定尺寸的产品图像的 URL。

我想到了一个二维数组(即 NSArray 的 NSArrays),第一个维度是颜色,第二个维度是大小,单元格的内容是价格和 URL,但是当产品只有大小时会有一些不便没有颜色,反之亦然。

是否有其他更好的数据结构可以满足我的需求,或者我的选择是最好的?

谢谢!

4

1 回答 1

0

您应该构建自己的具有层的数据结构。例如:

@interface Variant : NSObject
@property (nonatomic, strong) UIColor *color;
@property (nonatomic) CGFloat price;
@property (nonatomic, strong) NSString *size; // might want a better structure to hold this
@end

@interface Product : NSObject
@property (nonatomic, strong) NSString *title;
@property (nonatomic, strong) NSArray *variants; // Is an array of Variant's
@end

如果您只是将数组嵌套到数组中,那么您将获得面向对象编程的结构和好处。

于 2013-08-23T17:59:51.030 回答