字典比较数组

时间:2013-06-21 13:02:16

标签: ios objective-c cocoa-touch nsarray nsdictionary

这里是我的应用程序代码输出,这是我的字典值数组array1,array2 ..

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 = "";
}

如何比较两个匹配相同城市,州,国家的字典值数组。可以帮我解决一下吗?

1 个答案:

答案 0 :(得分: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代替“==”!