我有一個NSArray,數組中的每個對象都有一個groupId和一個名字。每個對象都是唯一的,但有許多具有相同的groupId。有沒有一種方法可以將數組拆分並重建它,以便將名稱與相應的groubId分組爲單個對象?以下是該數組目前的樣子:通過對具有匹配ID號的對象進行分組來重建NSArray?
2013-03-12 20:50:05.572 appName[4102:702] the array: (
{
groupId = 1;
name = "Dan";
},
{
groupId = 1;
name = "Matt";
},
{
groupId = 2;
name = "Steve";
},
{
groupId = 2;
name = "Mike";
},
{
groupId = 3;
name = "John";
},
{
groupId = 4;
name = "Kevin";
}
)
這是我想它是什麼樣子:
2013-03-12 20:50:05.572 appName[4102:702] the array: (
{
groupId = 1;
name1 = "Dan";
name2 = "Matt";
},
{
groupId = 2;
name1 = "Steve";
name2 = "Mike";
},
{
groupId = 3;
name = "John";
},
{
groupId = 4;
name = "Kevin";
}
)
編輯: 我已經試過&失敗,多次嘗試,沿着最這樣的東西(馬虎娛樂,但給一個想法):
int idNum = 0;
for (NSDictionary *arrObj in tempArr){
NSString *check1 = [NSString stringWithFormat:@"%@",[arrObj valueForKey:@"groupId"]];
NSString *check2 = [NSString stringWithFormat:@"%@",[[newDict valueForKey:@"groupId"]];
if (check1 == check2){
NSString *nameStr = [NSString stringWithFormat:@"name_%d",idNum];
[newDict setValue:[arrObj valueForKey:@"name"] forKey:nameStr];
}
else {
[newDict setValue:arrObj forKey:@"object"];
}
idNum++;
}
'的NSString * ID = [NSNumber的numberWithInt:〔O objectForKey:@ 「的groupId」]];''numberWithInt '接受'int'作爲參數並返回'NSNumber'。你提供一個'id'參數並分配給'NSString'。 – Sebastian 2013-03-13 02:10:04