加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 排序NSDictionary按存储为value的对象的属性

发布时间:2020-12-16 03:36:31 所属栏目:百科 来源:网络整理
导读:我将数据存储在NSMutableDictionary中以存储Web服务接收的数据. 我想以alpha顺序显示数据,但是我们知道字典存储数据以自己的方式存在,所以我得到了iOS 5和iOS 6的不同顺序.iOS 5很好但是在iOS 6中它改变了顺序. 我将int key和object存储为值. 对象包含ID,名
我将数据存储在NSMutableDictionary中以存储Web服务接收的数据.

我想以alpha顺序显示数据,但是我们知道字典存储数据以自己的方式存在,所以我得到了iOS 5和iOS 6的不同顺序.iOS 5很好但是在iOS 6中它改变了顺序.

我将int key和object存储为值.

对象包含ID,名称和描述.

EX:
  key  value
  1 -  (12,bhgjksd,kijdh)
  6 -  (13,kjfd,ikjk)
  2 -  (14,ljiuhbdf,dsjhfj)

如何通过Object.Name属性对Dictionary进行排序.
或者根据Object.Name排序顺序获取密钥.

我不想对按键排序我要对作为对象存储在值部分中的Object.Name进行排序.

欢迎任何形式的帮助…..
提前致谢..

解决方法

试试这个,
NSArray *sortedKeys = [dict keysSortedByValueUsingComparator: ^(id obj1,id obj2) {

     return (NSComparisonResult)[obj1.name compare:obj2.name];;
}];

您将获得sortedKeys数组中的所有键,按object.name属性的顺序排序.您可以使用这些键从字典中获取值[dict valueForKey:[sortedKeys objectAtIndex:i]].有关详细信息,请访问check apple documentation.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读