您好,登錄后才能下訂單哦!
用字典能有什么好處?
字典是個大容器,它能夠儲存多個數據
用字典存儲的數據具有一一對應的關系(使用key來標識value)
字典中一對鍵值對(key-value)叫做字典中的一個元素,也叫一個條目,只要是對象就可以,不限制類型
字典是無序的
字典中的key是唯一的,一個key只能對應一個value,一個value可以對應多個key
創建字典對象:
1.便利構造器(+號方法):
NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"qinfen", @"name", @20, @"height", @12, @"age", nil];
dictionaryWithObjectsAndKeys:元素與元素之間用逗號分隔, nil 作為字典結束的標志
2.初始化方法(-號方法):
nitWithObjectsAndKeys:@"qinfen", @"name", @20, @"height", @12, @"age", nil];
initWithObjectsAndKeys:元素與元素之間用逗號分隔, nil 作為字典結束的標志
輸出字典時用大括號括著元素顯示,如: {
age = 12;
height = 20;
name = qinfen;
}
獲取字典元素個數
count方法
NSLog(@"%lu", [dic1 count]);
獲取所有的key
allkeys方法
NSArray *key = [dic allKeys]; NSLog(@"%@", key);
輸出顯示是每個key
根據key獲取對應的value
objectForKey:方法
NSString *value = [dic objectForKey:@"name"]; NSLog(@"%@", value);
輸出顯示的是@"name" 這個key對應的值的內容
字典快速遍歷:
快速遍歷對于數組來說,遍歷得到的是數組中的每一個元素
而對于字典來說,遍歷字典得到的是每個key,不是value,也不是key和value,但然后可以通過key獲取value
for (NSString *key in dic) { //檢索到key之后,通過objectForKey:獲取對應的value NSLog(@"%@", [dic objectForKey:key]); }
以上是字典中常用的方法
可變字典NSMutableDictionary
可變字典比字典多了增加,刪除,修改的方法
創建可變字典對象
NSMutableDictionary *dic = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"xiaoguang", @"guanggun1", @"xiaomeng", @"guanggun2", @"xiashuai", @"guanggun3", nil];
dictionaryWithObjectsAndKeys:方法
刪除元素
[dic removeObjectForKey:@"guanggun1"];
removeObjectForKey:方法,通過查找key,將key和key所對應的value一起刪除,即刪除了一對鍵值對
添加元素
[dic setObject:@"chengjie" forKey:@"guanggun1"];
setObject: value元素 forKey: key元素 方法
修改元素
[dic setObject:@"xiaocui" forKey:@"guanggun1"]
setObject: value元素 forKey: key元素 方法 工作原理:
先根據指定的key查找字典中是否存在相同的key,(查找字典中的是否存在指定的key) 如果存在,則修改key對應的value,如果不存在,在字典中添加一個元素,key-value鍵值對
集合
創建集合對象
便利構造器
NSSet *set1 = [NSSet setWithObjects:@"1", @"2", @"3", @"4", @"5", nil];
setWithObjects:方法
初始化方法
NSSet *set2 = [[NSSet alloc] initWithObjects:@"1", @"2", @"3", @"4", @"5", @"1", @"2", @"3", @"4", @"5", nil];
initWithObjects:方法
獲取集合元素個數
count方法
NSLog(@"%lu", [set2 count]);
獲取集合中的某個元素
NSString *str1 = [set2 anyObject];
anyObject方法
判斷集合中是否包含某個元素
BOOL isExist = [set2 containsObject:@"3"];
containsObject:方法 參數為要查找得元素,返回值為布爾值
可變集合
添加元素
[set3 addObject:@"6"];
addObject:方法
移除元素
[set3 removeObject:@"5"];
removeObject:方法
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。