oc NSString NSNumber NSArray

1、使用蘋果幫助文檔
數組

查閱頭文件:COMMAND + 左擊app

查閱文檔:框架

     a.help->Documentation and API Referencespa

     b.Command+Shitf+0code

     c.Alt + 左擊orm

⽂檔基本信息對象

Inherits from 繼承⾃繼承

Conforms to 遵循什麼協議ci

Framework 屬於哪一個框架rem

Availability 何時可⽤的

Declared in 聲明在什麼頭⽂件⾥

Related documents 相關⽂檔

Sample code ⽰例代碼


2、字符串類

#pragma mark ----  NSString 不可變字符串 ----

#pragma mark -- 建立字符串對象

// 字符串常量

     NSString * s1 = @"Hello";

// 格式化字符串

    NSString * s2 = [[NSString alloc] initWithFormat:@"%.1f",6.5];

    NSString * s3 = [[NSString alloc] initWithFormat:@"%@ world", s1];

// 便利構造器 stringWithString 實際爲Copy,s四、s3地址不同

    NSString * s4 = [NSString stringWithString:s3];

// 從文件中讀取文本,建立字符串對象

    NSString * s5 = [[NSString alloc]                initWithContentsOfFile:@"pathUrl" encoding:NSUTF8StringEncoding error:nil];


// 使用C語言的字符串建立

    NSString * s6 = [NSString stringWithCString:"Hello C " encoding:NSUTF8StringEncoding];

// 轉換爲C語言的字符串

   char *char = s6.UTF8String;


#pragma mark -- 字符串長度、範圍
    NSString * testStr = [NSString stringWithFormat:@"BJS150726"];
   
// 獲取字符串長度
   
NSUInteger strLength = [testStr length];
   
// 範圍
   
// NSRange是結構體類型
   
NSRange range = [testStr rangeOfString:@"0726"];    // 輸出{5,4}
   
/*--------NSRange to NSString--------*/
   
NSLog(@"%@", NSStringFromRange(range));
   
NSRange range1 = NSMakeRange(5, 4); // 輸出{5,4}
   
#pragma mark --字符串比較
    // 判斷字符串是否包含某個前綴
   
BOOL r1 = [testStr hasPrefix:@"BJS"];   // true包含, false不包含//hasSuffix 後綴
   
// 比較兩個字符串大小
   
NSComparisonResult comp = [@"abc" compare:@"xyz"]; // comp=-1, str1<str2//NSComparisonResult爲枚舉
   
   
// 判斷是不是字符串的字串
   
/*---------------方法一 iOS 8 & OSX 10.10 available------------------*/
    [testStr
containsString:@"0726"];   // 包含true
   
// 方法2
   
NSRange range2 = [testStr rangeOfString:@"0725"];
   
BOOL isIncluded = range2.length;    //
   
   
// 判斷兩個字符串對象的內容是否相同
    [
@"abc" isEqualToString:@"xyz"]; // 相等返回true
   
#pragma mark --字符串大小寫轉換
    NSString * str3 = @"ABCdef";
   
NSString * upStr3 = [str3 uppercaseString]; //大寫
   
NSString * loStr3 = [str3 lowercaseString]; //小寫
   
#pragma mark --字符串截取
    // 從起始至index-1
   
NSString * cutTestStrToIndex = [testStr substringToIndex:3]; // 共截取3個字符,@"BJS"
   
// index至末尾
   
NSString * cutTestStrFromIndex = [@"BJS150726" substringFromIndex:5];  // @"1507"
   
NSString * cutTestStrWithRange = [testStr substringWithRange:NSMakeRange(3, 2)];    //15
   
#pragma mark --字符串拼接、替換
    // 拼接和替換,返回新NSString對象
   
// append
   
NSString * str5 = @"北京";
   
NSString * appendStr = [str5 stringByAppendingString:@"藍鷗科技"];  //北京藍鷗科技
   
NSString * appendFormatStr = [appendStr stringByAppendingFormat:@"BJS%@%@",@"150726", @"-94"];    //北京藍鷗科技BJS150726-94
   
// replace
   
NSString * repStr = [str5 stringByReplacingOccurrencesOfString:@"" withString:@""];   // 南京  //根據字符串替換

    NSString * repStr2 = [str5 stringByReplacingCharactersInRange:NSMakeRange(0, 1) withString:@""];   // 南京  //根據位置替換


#pragma mark --字符串和基本數據類型轉換
    // 將字符串轉換爲整形數
    NSString * str6 =
@"123";
   
int a = [str6 intValue];  // a=123 其餘value進入intValue中看

#pragma mark -----NSMutableString 可變字符串 -----

    // 建立可變字符串對象
   
NSMutableString *ms1 = [[NSMutableString alloc] init];
    [ms1
setString:@"hello"];
   
// 拼接
    [ms1
appendString:@"world"];
   
NSLog(@"ms1 = %@",ms1);
   
// 插入
    [ms1
insertString:@" " atIndex:5];
   
// 替換
    [ms1
replaceCharactersInRange:NSMakeRange(6, 5) withString:@"lanou"];
   
// 刪除

    [ms1 deleteCharactersInRange:NSMakeRange(5, 6)];


3、數組對象

集合(collection)iOS中存放數據的容器類

#pragma mark -----NSArray 不可變數組-----

    /*
        1
、數組對象中只能存儲對象類型(*),不能存儲基本數據類型
        2
、數組對象中能夠同時存儲不一樣類型的對象
        3
、有序,下標從0開始/越界崩潰

     */

    // 建立數組對象  /nil爲結束標誌
   
NSArray * array1 = [[NSArray alloc] initWithObjects:@"你好", @"2", @"3", nil];
   
// 使用數組建立數組
   
NSArray * array2 = [NSArray arrayWithArray:array1];
   
// 獲取數組元素個數
   
NSUInteger uIntNum = [array1 count];
    uIntNum = [array1
indexOfObject:@"你好"];
   
   
// 語法糖
   
// 建立數組
   
NSArray * array3 = @[@"1", @"2", @"hi"];
   
// 訪問元素 array3[0];
   
#pragma mark -----NSMutableArray 可變數組-----
    // 建立
    NSMutableArray * marr1 = [NSMutableArray array];

   
// 添加
    [marr1 addObject:
@"10"];
    [marr1 addObject:
@"20"];
   
// 插入
    [marr1 insertObject:
@"3" atIndex:2];
   
// 交換數組中兩個數組元素的位置
    [marr1 exchangeObjectAtIndex:
0 withObjectAtIndex:2];
   
// 替換
    [marr1 replaceObjectAtIndex:
2 withObject:@"one"];
   
// 移除
   
//[marr1 removeAllObjects];
   
   
// 遍歷  //符合getter語法的方法,都可用.調用
   
for (int i = 0; i < marr1.count; i++) {
        NSLog(
@"%@", marr1[i]);

    }

QA : 

QA: oc是否有默認形參值

ans:NO!

相關文章
相關標籤/搜索