-
數組
-
數組的創建
NSArray * array = @[@"123",@1,@"dsfds"]; //在OC中創建對象, [[類名 alloc]init],實例方法創建數組對象 NSArray *array1 = [[NSArray alloc]initWithObjects:@"sdsd",@12,@YES, nil]; //使用類方法創建數組對象 NSArray * array2 = [NSArray arrayWithObjects:@"dsfd",@"dfdsf", nil]; //通過對象方法創建一個新的數組,使用一個已經存在的數組 NSArray *array3 = [[NSArray alloc]initWithArray:array1]; //通過類方法創建一個新的數組,使用一個已經存在的數組作為參數 NSArray *array4 = [NSArray arrayWithArray:array2];
-
可變數組的創建
//使用對象方法創建可變數組,不指定存放元素的個數 NSMutableArray * array5 = [[NSMutableArray alloc]init]; //類方法創建 NSMutableArray * array6 = [NSMutableArray array]; //使用數組元素創建可變數組,對象方法 array5 = [[NSMutableArray alloc]initWithObjects:@"123",@1, nil]; //對應的類方法 使用數組元素創建可變數組 array5 = [NSMutableArray arrayWithObjects:@"grd",@89, nil]; //通過一個已經存在的數組創建一個可變數組,對象方法 array6 = [[NSMutableArray alloc]initWithArray:array1]; //通過一個已經存在的數組創建一個可變數組,類方法 array6 = [NSMutableArray arrayWithArray:array2];
-
可變數組的常用方法
//添加新的元素 [array6 addObject:@"1234"]; //在數組的某一特定位置加入新的元素,注意:下標不要越界 [array6 insertObject:@"gfhn" atIndex:0]; //將某一數組中的所有元素添加到當前數組之后 [array6 addObjectsFromArray:array1]; //刪除已經存在的元素 [array6 removeObject:@"1234"];//直接刪除對象,指針 [array6 removeObjectAtIndex:0];//通過下標刪除對象 //刪除某一個范圍的元素,起始下標1,1開始往后刪除2個元素 [array6 removeObjectsInRange:NSMakeRange(1, 2)]; //交換元素的位置,通過下標交換兩個元素的位置 [array6 exchangeObjectAtIndex:0 withObjectAtIndex:1]; //訪問數組中的元素 //通過下標訪問數組中的元素 id item = array6[0]; NSLog(@"===%@",item); //通過下標訪問數組中的元素 item = [array6 objectAtIndex:0]; //獲取某一個元素在數組中的下標 NSInteger index = [array6 indexOfObject:item]; //獲取數組中的第一個元素 id first = [array6 firstObject]; //獲取最后一個元素 id last = [array6 lastObject]; //判斷數組中是否包含某一個元素 BOOL have = [array6 containsObject:@"1234"]; NSLog(@"%@",have == YES?@"存在1234":@"不存在1234"); //獲取數組中的元素個數 //NSInteger count = [array6 count]; NSInteger count = array6.count;
-
-
字典
-
創建字典對象
NSDictionary * dict = @{@"key1":@"fesr",@"key2":@34,@"key3":array6}; //對象方法創建字典,使用鍵值對創建,值在前,key在后,成對出現 NSDictionary *dict1 = [[NSDictionary alloc]initWithObjectsAndKeys:@"value1",@"key1",@"value2",@"key2",@"value3",@"key3", nil]; //類方法創建字典,使用鍵值對創建,值在前,key在后,成對出現 NSDictionary *dict2 = [NSDictionary dictionaryWithObjectsAndKeys:@"value1",@"key1",@"value2",@"key2",@"value3",@"key3", nil]; NSLog(@"字典 --->%@",dict2); //使用一個已經存在的字典創建新的字典,對象方法 NSDictionary *dict3 = [[NSDictionary alloc]initWithDictionary:dict1]; //使用一個已經存在的字典創建新的字典,類方法 NSDictionary *dict4 = [NSDictionary dictionaryWithDictionary:dict2];
-
創建可變字典對象和數組大體類似
NSMutableDictionary *dict5 = [[NSMutableDictionary alloc]init]; NSMutableDictionary * dict6 = [NSMutableDictionary Dictionary];
-
可變字典的常用方法
//添加鍵值對 [dict5 setObject:dict1 forKey:@"dict"]; [dict5 setValue:array6 forKey:@"array"]; //獲取字典的key對應的值 id value1 = dict5[@"dict"]; id value2 = [dict5 objectForKey:@"array"]; //獲取所有的鍵的數組 NSArray *keys = [dict5 allKeys]; //獲取所有的value NSArray *values = [dict5 allValues]; //對象轉NSData 對象 -> 字典 -> NSData // toDictionary:通過runtime獲取一個對象的所有成員變量和屬性,將所有的成名變量名和屬性名作為字典的key,他們所對應的值作為value NSData *data = [NSJSONSerialization dataWithJSONObject:dict5 options:NSJSONWritingPrettyPrinted error:nil]; //刪除鍵值對 [dict5 removeObjectForKey:@"dict"];
-
-
集合
-
對象方法創建集合,集合時沒有順序的
NSSet *set = [[NSSet alloc]initWithObjects:@"123",dict5,array, nil]; //類方法創建集合 NSSet *set1 = [NSSet setWithObjects:@"23232",dict1,array6, nil];
-
字符集合 ---字符串分割
//字符集合, NSCharacterSet *cSet = [NSCharacterSet characterSetWithCharactersInString:@"#$&*"]; NSString *str = @"dssafv#dsf&gfh*fdf$dsb"; //字符串分割 NSArray *array7 = [str componentsSeparatedByCharactersInSet:cSet]; NSLog(@"分割后的數組 %@",array7);
-
字符集合----NSURL中的Unicode編碼
NSString *str = @"http://www.baidu.com:8080/image?name=性感"; NSCharacterSet *set2 = [NSCharacterSet URLFragmentAllowedCharacterSet]; [str stringByAddingPercentEncodingWithAllowedCharacters:set2];
-
OC中的集合類型
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
- 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
推薦閱讀更多精彩內容
- 1. 熟悉Git的基本流程 git clone git add -A git commit -m " " git ...