检查objects数组中key的值是否相同iOS?
Check if the value of key in an array of objects is same iOS?
我有一个 NSArray
有一些 dictionaries.which 有一些键和 values.which 我在一个表视图中显示。我会把 header 部分的标题是该字典中一个键的值之一,即像 ddDate 值。问题是相同的 ddDate 值需要放在同一部分下。所以我需要根据那个创建我的数组。
responseDict (
{
xx = 16;
yy = 17;
aa = 0;
bb = 6;
cc = 2016;
ddDate = "17-06-2016";
},
{
xx = 17;
yy = 17;
aa = 0;
bb = 6;
cc = 2016;
ddDate = "17-06-2016";
},
{
xx = 18;
yy = 17;
aa = 0;
bb = 6;
cc = 2016;
ddDate = "18-06-2016";
}
即日期是章节标题。以及那些在一个部分下具有相同 ddDate 值的人。谁能指导我如何实现这一目标?
您必须创建自定义数组然后比较日期,如果日期相同则将其添加到一个 header 标题下,否则将其移至下一个 header 标题。因此,我在这里看不到捷径。
你的目标是建立两个数据结构; ddDate
个值的数组;这将是您的部分信息和数组字典,由 ddDate
值作为键;这将是您的行数据。
@property (strong, nonatomic) NSArray *sections;
@property (strong, nonatomic) NSDictionary *rows;
- (void)processJSONData:(NSArray *)inputArray {
NSMutableDictionary *extractedData = [NSMutableDictionary new];
for (NSDictionary *dict in inputArray) {
NSString *ddDate = dict["ddDate"];
NSMutableArray *rowArray = extractedData[ddDate];
if (rowArray == nil) {
rowArray = [NSMutableArray new];
extractedData[ddDate] = rowArray;
}
[rowArray addObject:dict];
}
self.sections = [extractedData allKeys];
self.rows = [NSDictionary dictionaryWithDictionary:extractedData];
}
您可能想要对 self.sections
数组进行排序。
节数为 self.sections.count
,节中的行数为 self.rows[self.sections[indexPath.section]].count
我有一个 NSArray
有一些 dictionaries.which 有一些键和 values.which 我在一个表视图中显示。我会把 header 部分的标题是该字典中一个键的值之一,即像 ddDate 值。问题是相同的 ddDate 值需要放在同一部分下。所以我需要根据那个创建我的数组。
responseDict (
{
xx = 16;
yy = 17;
aa = 0;
bb = 6;
cc = 2016;
ddDate = "17-06-2016";
},
{
xx = 17;
yy = 17;
aa = 0;
bb = 6;
cc = 2016;
ddDate = "17-06-2016";
},
{
xx = 18;
yy = 17;
aa = 0;
bb = 6;
cc = 2016;
ddDate = "18-06-2016";
}
即日期是章节标题。以及那些在一个部分下具有相同 ddDate 值的人。谁能指导我如何实现这一目标?
您必须创建自定义数组然后比较日期,如果日期相同则将其添加到一个 header 标题下,否则将其移至下一个 header 标题。因此,我在这里看不到捷径。
你的目标是建立两个数据结构; ddDate
个值的数组;这将是您的部分信息和数组字典,由 ddDate
值作为键;这将是您的行数据。
@property (strong, nonatomic) NSArray *sections;
@property (strong, nonatomic) NSDictionary *rows;
- (void)processJSONData:(NSArray *)inputArray {
NSMutableDictionary *extractedData = [NSMutableDictionary new];
for (NSDictionary *dict in inputArray) {
NSString *ddDate = dict["ddDate"];
NSMutableArray *rowArray = extractedData[ddDate];
if (rowArray == nil) {
rowArray = [NSMutableArray new];
extractedData[ddDate] = rowArray;
}
[rowArray addObject:dict];
}
self.sections = [extractedData allKeys];
self.rows = [NSDictionary dictionaryWithDictionary:extractedData];
}
您可能想要对 self.sections
数组进行排序。
节数为 self.sections.count
,节中的行数为 self.rows[self.sections[indexPath.section]].count