【发布时间】:2015-11-24 07:17:29
【问题描述】:
Rewards = (
{
"Restaurant_ID" = 34;
"Rewarded_Points" = 40;
"Rewarded_Time" = "2015-11-23 09:16:00";
},
{
"Restaurant_ID" = 40;
"Rewarded_Points" = 60;
"Rewarded_Time" = "2015-11-24 12:22:56";
},
{
"Restaurant_ID" = 34;
"Rewarded_Points" = 40;
"Rewarded_Time" = "2015-11-24 12:22:56";
}
);
我正在检索上述对变量的响应并使用 for 循环显示在 TableViewController 中
for(int i=0;i<rewards.count;i++){
NSDictionary * rewardsObj = [rewards objectAtIndex:i];
restId = [rewardsObj objectForKey:@"Restaurant_ID"];
rewardedPoints = [rewardsObj objectForKey:@"Rewarded_Points"];
}
[self.tableView reloadData];
当前输出一次又一次地显示相同的餐厅 ID。我想如果有匹配的 ID 那么这些点需要计算总和。
34 - Total Points : 40
40 - Total Points : 60
34 - Total Points : 40 //再次
但我想像下面这样排序
34 - Total Points : 80 // 40+40
40 - Total Points : 60
【问题讨论】:
-
你是否将restId和rewardedPoints存储到数组中?
-
@Venkat 是的。如果有匹配的restId,则奖励积分输出所有的总和。
-
你可以创建一个字典,键是 ID,然后在解析 JSON 到字典时,你可以检查键是否存在然后做你的 SUM,否则再做一个新的对,这是最简单的我能想到的最快方法
标签: ios objective-c iphone json