介紹的api
// // main.m // NSDiconary // // Created by ganchaobo on 13-4-29. // Copyright (c) 2013年 ganchaobo. All rights reserved. // #import <Foundation/Foundation.h> void CreateDic(){ //第一種創建字典,創建多個key-value NSDictionary *dic=[NSDictionary dictionaryWithObjectsAndKeys:@"k1",@"v1" ,@"k2",@"v2",@"k3",@"v3", nil]; //NSLog(@"%@",dic); //第二種創建字典 創建一對 key-value NSDictionary *dic1=[NSDictionary dictionaryWithObject:@"VV" forKey:@"KK"]; // NSLog(@"%@",dic1); //第三種創建多對間值 NSArray *key=[NSArray arrayWithObjects:@"K1",@"K2",@"K3", nil]; NSArray *value=[NSArray arrayWithObjects:@"V1",@"V2",@"V3", nil]; NSDictionary *dic2=[NSDictionary dictionaryWithObjects:key forKeys:value]; //NSLog(@"%@",dic2); NSDictionary *dic3=[NSDictionary dictionaryWithDictionary:dic2]; NSLog(@"%@",dic3); } void DicMethod(){ NSDictionary *dic=[NSDictionary dictionaryWithObjectsAndKeys:@"K1",@"V1",@"K2",@"V2",@"K3",@"V3", nil]; NSDictionary *dic1=[NSDictionary dictionaryWithObjectsAndKeys:@"K1",@"V1",@"K1",@"V2",@"K3",@"V3", nil]; NSLog(@"%zi",[dic count]);//字典種右多少對key-value NSLog(@"%@",[dic allKeys]);//字典種的所有keys NSLog(@"%@",[dic allValues]);//字典中所有的values NSLog(@"%i",[dic isEqualToDictionary:dic1]); NSLog(@"%@",[dic objectForKey:@"V1"]); NSArray *arr=[dic1 allKeysForObject:@"K1"];//通過value找對應多個key NSArray *arr1=[NSArray arrayWithObjects:@"V1",@"V2",@"VG", nil]; NSArray *ARR= [dic objectsForKeys:arr1 notFoundMarker:@"BB"]; NSLog(@"%@",ARR); } void WriteFile(){ NSDictionary *dic=[NSDictionary dictionaryWithObjectsAndKeys:@"k1",@"v1",@"k2",@"v2", nil]; [dic writeToFile:@"/Users/ganchaobo/Desktop/2.txt" atomically:YES]; } void ReadFile(){ NSDictionary *dic=[NSDictionary dictionaryWithContentsOfFile:@"/Users/ganchaobo/Desktop/2.txt"]; NSLog(@"%@",dic); } //第一次遍歷 void bianli1(){ NSDictionary *dic=[NSDictionary dictionaryWithObjectsAndKeys:@"k1",@"v1",@"k2",@"v2", nil]; NSArray *arr=[dic allKeys]; for(id key in arr){ id obj=[dic objectForKey:key]; NSLog(@"Key-->%@ value--->%@",key,obj); } } //第二種遍歷 void bianli2(){ NSDictionary *dic=[NSDictionary dictionaryWithObjectsAndKeys:@"k1",@"v1",@"k2",@"v2", nil]; NSEnumerator *e= [dic keyEnumerator]; id key=nil; while(key=[e nextObject]){ id obj=[dic objectForKey:key]; NSLog(@"Key-->%@ value--->%@",key,obj); } } //第三種遍歷 void bianli3(){ NSDictionary *dic=[NSDictionary dictionaryWithObjectsAndKeys:@"k1",@"v1",@"k2",@"v2", nil]; [dic enumerateKeysAndObjectsUsingBlock:^(id key,id value,BOOL *stop){ NSLog(@"Key-->%@ value--->%@",key,value); }]; } /////////key排序 void sort1(){ NSDictionary *dic=[NSDictionary dictionaryWithObjectsAndKeys:@"1",@"AC",@"3",@"AF",@"2",@"AE", nil]; NSArray *arr= [dic keysSortedByValueUsingSelector:@selector(compare:)]; //通過value排序,返回key集合 NSLog(@"%@",arr); } void sort2(){ NSDictionary *dic=[NSDictionary dictionaryWithObjectsAndKeys:@"1",@"AC",@"3",@"AF",@"2",@"AE", nil]; NSLog(@"%@",dic); } //NSMustableDictionary void CreateMutableDic(){ NSMutableDictionary *mutableArray=[NSMutableDictionary dictionaryWithObjectsAndKeys:@"V1",@"K1",@"V2",@"K2", nil]; NSMutableDictionary *dic=[NSMutableDictionary dictionaryWithObject:@"AA" forKey:@"BB"]; //[mutableArray addEntriesFromDictionary:dic];//在字典種添加字典 //[mutableArray removeAllObjects]; //[mutableArray removeObjectForKey:@"K1"];//通過key移除鍵值對 //[mutableArray setDictionary:dic];//重新設置字典 //[mutableArray setObject:@"VV" forKey:@"K1"];//通過字典的key設置value //[mutableArray setObject:[NSNull null] forKey:@"K1"];//通過key 設置value 為null NSArray *arr=[NSArray arrayWithObjects:@"K1",@"K3" , nil]; [mutableArray removeObjectsForKeys:arr];//刪除數組中相同的key對應的key-value NSLog(@"%@",mutableArray); } int main(int argc, const char * argv[]) { @autoreleasepool { CreateMutableDic(); } return 0; }