2013-06-21 95 views
1

这里我的应用程序代码的输出,这是我的字典值数组数组1,数组2 ..阵列字典比较

array1(
    { 
    city = Glendale; 
    country = US; 
    st = AZ; 
}, 
    { 
    city = "Glendale Luke AFB"; 
    country = US; 
    st = AZ; 
}, 
    { 
    city = Goodyear; 
    country = US; 
    st = AZ; 
}, 
    { 
    city = Phoenix; 
    country = US; 
    st = AZ; 
} 


array2(
    { 
    cont = US; 
    cty = Glendale; 
    sta = AZ; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = CA; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = CO; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = ID; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = KY; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = MA; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = MS; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = MO; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = NY; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = OH; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = OR; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = RI; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = SC; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = TX; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = UT; 
}, 
    { 
    cont = US; 
    cty = Glendale; 
    sta = WI; 
}, 
    { 
    cont = ZW; 
    cty = Glendale; 
    sta = ""; 
} 

如何比较两个数组字典值匹配同一个城市,州,国家的。可任何人请帮我解决它?

+7

我无法抗拒:[你有什么尝试?](http://mattgemmell.com/2008/12/08/what-have-you-tried/) – vikingosegundo

+4

它对我来说总是一个谜,为什么没有付出努力的问题会得到票... – vikingosegundo

回答

3

尝试是这样的:

for (id object1 in array1) 
{ 
    for (id object2 in array2) 
    { 
    if ((object1.cty == object2.cty) && 
     (object1.cont == object2.cont) && 
     (object1. sta == object2.sta)) 
     { 
      // do smth 
     } 
    } 
} 

请记住,如果你有NSString的的对象,你需要使用isEqualToString而不是“==”!

+0

难道你不想使用'isEqualToString'而不是'=='吗?由于您正在比较指针值,因此对象本身必须相同,而不是其内容。 – HAS

+1

但我已经提到了这个事实,不是吗?关键是,我不想为OP做所有的工作,这只是他需要的暗示... – duDE

+0

哦,你刚刚编辑你的答案! ;) – HAS