这里我面临一些问题,我从服务器获得两个数组,第一个数组是这样的
[
"AI",
"AI",
"9W",
"9W",
"AI",
"AI",
"9W"
]
第二阵列是这样的,
[
{
"Name": "iMac",
"Image": null,
"Code": "9W"
},
{
"Name": "iPhone",
"Image": null,
"Code": "AI"
},
]
但是我需要根据第一个数组代码值与第二个数组code
值进行比较,然后我需要得到相应的name
,我试图排序和快速枚举,但我无法得到,请帮助我如何获得,谢谢
发布于 2016-03-17 04:52:34
您可以使用谓词,查找其Code
与所寻找的值匹配的条目:
NSArray *objects = @[@{@"Name": @"iMac", @"Image": [NSNull null], @"Code": @"9W"},
@{@"Name": @"iPhone", @"Image": [NSNull null], @"Code": @"AI"}];
NSString *code = @"AI";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"Code=%@", code];
NSArray *matchingObjects = [objects filteredArrayUsingPredicate:predicate];
如果您想要第一个匹配项的名称:
NSString *name = matchingObjects[0][@"Name"];
发布于 2016-03-17 05:05:22
以下是一个Swift示例:
let arrayOne = [
"AI",
"AI",
"9W",
"9W",
"AI",
"AI",
"9W"
]
let arrayTwo = [
[
"Name":"iMac",
"Image":"null",
"Code": "9W"
],
[
"Name": "iPhone",
"Image": "null",
"Code": "AI"
],
]
for i in arrayTwo
{
if arrayOne .contains(i["Code"]!)
{
print(i["Name"]!)
}
}
请试试这个密码。在这里,您将得到与第一个数组匹配的名称
https://stackoverflow.com/questions/36051734
复制相似问题