25、深入探索Objective - C集合模式

深入探索Objective - C集合模式

1. 字典集合

1.1 概述

NSDictionary、NSMutableDictionary和NSMapTable用于组织无序的对象对,类似于java.util.HashMap。每对由一个键对象和一个值对象组成,通过与键相等的对象来访问值。集合中的键是唯一的,但值可以重复。

1.2 与Java字典类的共同特征

  • 集合中的键和值都是对象引用。
  • 键对象的值不应改变。
  • 键必须遵循相等性和哈希约定。
  • 键是唯一的,为现有键存储新值会用新的键值对替换现有的。
  • 单个值可以使用不同的键多次存储。
  • NSMapTable可以对其键和/或值对象使用强引用或弱引用,是java.util.WeakHashMap的灵活替代。

1.3 关键差异

  • 值对象不能为nil(null),nil值表示键不存在。若要存储无值的键,需从集合中移除该键。
  • 键对象总是被复制,并且必须符合NSCopying协议,集合保留键对象的副本,而不是用于添加键值对的实例。

1.4 常用方法

1.4.1 非修改方法
java.lang.HashMap NSDictionary NSMapTable
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值