OC 數組以及字符串拼接與分割


//@""空的字符串對象 -------分割
NSString * ptr = @ "I am a man" ;
NSArray * array = [ptr componentsSeparatedByString:@ " " ]; //將字符串整體作為分割條件 返回值為NSArray不可變數組
NSMutableArray * array1 = [NSMutableArray arrayWithArray:array]; //若修改,則將NSArray轉化為NSMutableArray
NSArray * array2 = [ptr componentsSeparatedByCharactersInSet:[NSCharacterSet                                           
characterSetWithCharactersInString:@ ", " ]]; //以字符串中的字符作為分割條件進行分割
《字符集合》
NSCharacterSet 這是個字符集合類
[NSCharacterSet characterSetWithCharactersInString:@ ", " ] //把字符串轉化為字符集合
-------拼接
NSString * str = [array componentsJoinedByString:@ " " ];
若分割條件出現在開頭或者結尾,則會出現空串@ "" ,如果不需要,則需要轉化成NSMutableString對空串進行處理
func1:  [array1 removeObject:@ "" ];     //找到空串直接刪除
func2:  for (id obj in array1){
  if ([obj length] == 0)           //空串的長度為0
  if ([obj isEqualToString:@ "" ])   //與空串進行比較(字符串是不能進行==比較的,要使用函數)       
}
 
可變數組:
NSMutableArray * array = [[NSMutableArray alloc]initWithObjects:@ "one" ,@ "two" ,@ "three" ,@ "four" , nil];
[array addObject:@ "five" ]; //在數組尾部插入元素
[array insertObject:@ "six" atIndex:5]; //在數組指定下標位置插入元素(不能越界,最大值為length)
 
[array removeObject:@ "six" ]; //刪除指定元素(數組中出現的所有位置都將被刪除)
[array removeObject:@ "two" inRange:NSMakeRange(0, 3)]; //從指定下標位置開始的指定長度內刪除指定元素
[array removeLastObject]; //刪除最后一個元素
[array removeAllObjects]; //刪除所有元素
     
[array replaceObjectAtIndex:3 withObject:@ "ios" ]; //將指定下標位置元素替換為指定的元素
[array exchangeObjectAtIndex:0 withObjectAtIndex:3]; //將指定下標的兩個元素進行交換
 
不可變數組:
NSArray * array = [[NSArray alloc]initWithObjects:@ "one" ,@ "two" ,@ "three" ,@ "one" , nil];
 
NSUInteger index = [array indexOfObject:@ "one123" ]; //返回第一個找到的數組成員對應的下標 找不到返回NSNotFound
 
index = [array indexOfObject:@ "one" inRange:NSMakeRange(1, 3)]; //在指定范圍內查找
     if (index != NSNotFound) {
          NSLog(@ "%ld" ,index);
     }
----抽取 組成新的數組
NSArray * array1 = [array objectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)]];
《數字集合》
NSIndexSet這是個數字集合類
[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, 3)]產生一個數字集合
 
原文地址:http://my.oschina.net/outatu/blog/124967


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM