天天看點

OC--第四講

1.Declared  in聲明在什麼頭檔案裡

   inherits from 繼承自

   Conforms to 遵循什麼協定

   Framework   屬于哪個架構

   Availability    什麼時候可用的

   Related  documents 相關文檔

   Sample   code  示例代碼

2.NSString  不可變的字元串類,NSString對象建立以後,内容和長度不能夠更改

hasPrefix 比對字首

hasSuffix 比對字尾

isEqualToString 是否相等

(NSRange)rangeOfString:(NSString *)aString; 搜尋字元串的範圍

     // 搜尋字元串的範圍   //   NSString  *sourceStr = @" 藍歐科技有限公司 "; //    NSRange range = [sourceStr rangeOfString:@" 藍歐 "]; //    NSLog(@"%lu,%lu",range.location,range.length);

(NSString *)substringWithRange:(NSRange)range; 截取字元串

     // 截取字元串     NSString   *subStr = @" 藍歐科技有限公司 " ;    NSRange range = { 0 , 4 };    NSString *substring1 = [subStr substringFromIndex : 3 ];    NSString *substring2 = [subStr substringToIndex : 6 ];    NSString *substring = [subStr substringWithRange :range];    NSLog ( @"%@" ,substring1);    NSLog ( @"%@" ,substring2);    NSLog ( @"%@" ,substring);

//拼接字元串

 (NSString*)stringByAppendingString:(NSString*)aString;

     // 拼接字元串     NSString *str1 = @" 北京 " ;    NSString *str2 = @" 歡迎你 " ;    NSString *str4 = @" 啊啊啊啊!!! " ;    NSString *str3 = [str1 stringByAppendingString :str2];    NSString *str5 = [str1 stringByAppendingFormat : @"%@%@" ,str2,str4];    NSLog ( @"%@" ,str3);    NSLog ( @"%@" ,str5);    return 0 ; }

   // 字元串替換     NSString *str1 = @" 北京歡迎你啊啊啊啊!!! " ;    NSRange range = [str1 rangeOfString : @" 北京 " ];    NSString *newStr = [str1 stringByReplacingCharactersInRange :range withString : @" 藍歐 " ];    NSLog ( @"%@" ,newStr);

     // 字元串與數值類型轉換     int number  = 3 ;    NSString *numberstr = [[NSString alloc]initWithFormat:@"%d",number ];    NSLog(@"number = %@",numberstr);       NSString *numStr = @"9";    int num = [numStr intValue];    NSLog(@"num = %d",num);

// 大小寫轉換

    NSString *str = @"AbCdEfG";    NSString *newStr = [str uppercaseString];// 把小寫變大寫     NSString *newStr1 = [str lowercaseString];// 把大寫變成小寫     NSLog(@"%@,%@",newStr,newStr1);            NSString *newStr2 = [str capitalizedString];// 首字母大寫,其餘小寫

    NSLog(@"%@",newStr2);

  // 字元串比較     NSString *str1 = @"text" ;    NSString *str2 = @"rest" ;    int result = [str1 compare :str2]; //str1-str2     NSLog ( @"%d" ,result);

3.//NSMutableString的用法

    NSMutableString *str = [[ NSMutableString alloc ] initWithCapacity : 10 ];    [str setString : @"121325943132681324523170" ];    NSLog ( @"%@" ,str);        NSRange range = { 0 , 24 };    NSUInteger textNumber = [str replaceOccurrencesOfString : @"132" withString : @"text" options : 4 range :range]; // 用 text 替換 132 在 rangge 範圍内     NSLog ( @"%lu,%@" ,textNumber,str);

    NSMutableString *str1 = [[ NSMutableString alloc ] initWithCapacity : 10 ];

    [str1 setString : @" 測試字元串 123" ]; // 初始化方法 1     NSMutableString *str2 = [[ NSMutableString alloc ] initWithFormat : @" 測試字元串 " ]; // 初始化方法 2         [str1 appendString : @" 測試字元串 " ]; // 拼接字元串     [str1 insertString : @"irougo" atIndex : 5 ]; // 可變字元串插入字元串     NSRange range = { 0 , 4 };    [str1 deleteCharactersInRange :range]; // 删除字元串     NSLog ( @"%@" ,str1);

4.NSArray  不可變數組類    容器類,管理的事一組對象類型的資料

  數組的第一個索引是0,有序的。

  數組中存儲的元素必須是對象,類型任意;

  1)

      // 不可變數組

    NSArray *array = [[ NSArray alloc ] initWithObjects : @"1243" , @"3454r56" , nil ]; // 初始化方法 1 (對象執行個體化方法)     NSArray *array1 = [ NSArray arrayWithArray :array]; // 初始化方法 2 (便利構造器)     NSInteger count = [array count ]; // 求數組中元素的個數     NSLog ( @"%lu" ,count);    NSInteger num = [array indexOfObject : @"1243" ]; // 根據元素找對應索引     NSLog ( @"%lu" ,num);    for ( int i = 0 ; i<count; i++) {        id object = [array objectAtIndex :i]; // 根據索引找對應的元素         NSLog ( @"%@" ,object);    }

   2)

       // 可變的數組 NSMutableArray

    NSMutableArray *array = [[ NSMutableArray alloc ] initWithCapacity : 5 ];    // 添加元素     [array addObject : @"wo sakjf df" ];    [array addObject : @"sdgjl;dk" ];    [array addObject : @"sdgjl;dk" ];    [array addObject : @"sdgjl;dk" ];    [array addObject : @"sdgjl;dk" ];    [array addObject : @"sdgjl;dk" ];    [array addObject : @"sdgjl;dk" ];    // 可變數組插入元素     [array insertObject : @" 藍歐 " atIndex : 0 ];    // 删除元素 //    [array removeObject:@" 藍歐 "]; //    [array removeObjectAtIndex:1]; //    [array removeObjectIdenticalTo:@"sdgjl;dk"];// 删除和他相同的所有的元素     // 替換元素     [array replaceObjectAtIndex : 1 withObject : @"sdhfdmjhvkdbdjvbbv" ];    // 交換元素     [array exchangeObjectAtIndex : 0 withObjectAtIndex : 1 ];        NSLog ( @"%@" ,array);

5.     //NSNumber 數值類     char ch = 'A' ;    NSNumber *num = [[ NSNumber alloc ] initWithChar :ch];    char c = [num charValue ];    NSLog ( @"%c" ,c);    NSLog ( @"%@" ,num);

總結:

1.可變對象通常是不可變對象的子類,包含父類所有的方法,并具有增删改的功能

2.可變對象的增删改都是對自身的操作。不可變對象的增删改都會生成新的對象,原對象不變。

3.數組隻能存儲對象類型的資料,有序,考小标檢索對象。