Object_C 回顧 0.1.1 數據類型

 NSString //字符串        NSInteger //長整形(64位下)         CGFloat //實型

NSStringAndNSMutableString 字符串對象

NSArrayAndNSmutableArray 數組

NSNumber  數值對象類 (區別於NSInteger 基本數據類型)

NSValue 結構體

NSDictionaryAndNSMutableDictionary 字典型數據

NSSetAndNSMutableSet 集合


1)NSStringAndNSMutableString 

        創建字符串對象

        initWithString 相當於直接賦值常量字符串對象

        NSString *str1 = @"張三";

        //stringWithString :相當於直接賦值

        NSString*str2 = @"李四"; //

        NSString *str2 =[NSString stringWithString:@""]

        initWithFormat :通過傳入格式化字符串進行字符串對象的創建

        NSString *str3 = [[NSString alloc]initWithFormat:@"常量字符串 %@ %d %f",@"iPhone",6,6089.00];

        NSLog(@"%@",str3);        

        //stringWithFormat : 其實內部封裝了 alloc 以及 initWithFormat :操作

        NSString *str4 = [NSString stringWithFormat:@"通過便利構造器創建字符串"];

        NSLog(@"%@",str4);

        //initWithUTF8String : C語言的字符串 轉化成 OC 字符串對象

        NSString *str5 = [[NSString alloc]initWithUTF8String:"我是一個C語言字符串,不加@"];

        NSLog(@"%@",str5);

        //

        NSString *str6 = [NSString stringWithUTF8String:"嗶了狗了,通過便利構造器的方法將C語言轉化爲OC字符串"];

        NSLog(@"%@",str6);

        NSString *str =[NSString stringWithFormat:@"http://www.baidu.com"];

        NSLog(@"%@",str);

        

        //1.替換 將所有符合條件的字符串進行替換

        NSString *replaceStr =[str stringByReplacingOccurrencesOfString:@"baidu" withString:@"lanxiang"];

        NSLog(@"%@",replaceStr);

        

        //2.拼接

        NSString *appendStr = [str stringByAppendingFormat:@".cn"];

        NSLog(@"%@",appendStr);

        

        //3.長度

        NSUInteger length = [str length];

        NSLog(@"length = %lu",length);

        

        //4 大小寫轉換

        NSString *upperStr = [str uppercaseString];

        NSLog(@"%@",upperStr);

        NSString *lowerStr = [upperStr lowercaseString];

        NSLog(@"%@",lowerStr);

        //首字母大寫

        NSString *capital = [str capitalizedString];

        NSLog(@"%@",capital);

        //5.判斷開頭結尾 一般用來判斷字符串的格式

        BOOL isPerFix = [str hasPrefix:@"ftp"];

        NSLog(@"%d",isPerFix);

        BOOL isSufFix = [str hasSuffix:@".com"];

        NSLog(@"%d",isSufFix);

        6.字符串截取

        substringFromIndex : 從給定位置開始截取大字符串結束(包括當前位置)

        substringToIndex : 從開頭截取到指定位置 (不包括當前位置)

        substringWithRange : 通過給定範圍進行字符串的截取

        系統給我們提供了 快速創建結構體的方式 NSMake + 結構體名 (例如 NSRange NSMakeRange(1,10);)

        NSString *subStr1 = [str substringFromIndex:3];

        NSLog(@"%@",subStr1);

        

        NSString *subStr2 = [str substringToIndex:3];

        NSLog(@"%@",subStr2);

        

        NSString *subStr3 = [str substringWithRange:NSMakeRange(11, 7)];

        NSLog(@"%@",subStr3);

        

        判斷相等

        

        NSString *str2 = [NSString stringWithFormat:@"aa"];

        NSString *str3 = [NSString stringWithFormat:@"aa"];

        

        BOOL isEqual =[str2 isEqualToString:str3];

        NSLog(@"%d",isEqual);

    

        //比較

        NSInteger result = [str2 compare:str3];

        NSLog(@"result = %ld",result);

1.1NSMutableString 可變字符串 NSString的子類 增添了NSString 的可變的功能


        NSMutableString *xiaoMing  = [[NSMutableString alloc ]initWithFormat:@"xiaoMing love wifi"];

        

        //

        //拼接

        [xiaoMing appendFormat:@" xiaoHong"];

        NSLog(@"%@",xiaoMing);

        

        //插入

        [xiaoMing insertString:@"and " atIndex:17];

        NSLog(@"%@",xiaoMing);

        //可變子類不要輕易調用父類不可變的方法

        

        //

        //刪除

        [xiaoMing deleteCharactersInRange:NSMakeRange(12, 8)];

        NSLog(@"%@",xiaoMing);

        

        //替換

        [xiaoMing replaceCharactersInRange:NSMakeRange(12, 10)withString:@"wifi"];

        NSLog(@"%@",xiaoMing);

        

        //

        [xiaoMing setString:@"xiaoMing and xiaoHong live happily forever"];

        NSLog(@"%@",xiaoMing);

//判斷字符串@"aBcD_EfGK"中是否有EfGk,如果有將EfGK轉換成WXYZ,並讓字符串的大寫字母轉成小寫,輸出修改完成的字符串

        NSString *str =@"aBcD_EfGk";

        //rangeOfString:查找所給字符串在原字符串中的範圍 如果length > 0 說明 存在,如果length == 0 則不存在

        

        NSRange range = [str rangeOfString:@"EfGk"];

        NSLog(@"%ld %ld",range.location,range.length);

        

        if (range.length > 0) {

            NSString *newStr  = [str stringByReplacingOccurrencesOfString:@"EfGk" withString:@"WXYZ"];

            //轉化爲小寫

            NSString *lowerStr = [newStr lowercaseString];

            NSLog(@"%@",lowerStr);

        }

        

2)NSArrayAndNSmutableArray

2.1NSArray 

        NSString *Nokia = @"Nokia";

        NSString *apple = @"Apple";

        NSString *mi = @"MI";

        //initWithObjects:在初始化時 一次性存入多個對象 對象和對象之間","隔開 "nil"結尾 ,nil 之後的對象不再存儲

        NSArray *array = [[NSArray alloc]initWithObjects:Nokia,apple,mi, Nokia,nil];

        NSLog(@"%@",array);

        //數組個數

        NSInteger count = [array count];

        NSLog(@"count = %ld",count);

        //訪問數組元素

        

        NSString *what = [array objectAtIndex:3];

        NSLog(@"%@ %@",what,array[2]);

        

        //通過對象 找到索引值

        //indexOfObject: 只是 找到第一個滿足條件的對象的下標

        NSInteger index = [array indexOfObject:Nokia];

        NSLog(@"%ld",index);

        

        //遍歷數組

        

        for (int i = 0; i < array.count; i++)

        {

            NSLog(@"%@",[array objectAtIndex:i]);

        }

        

        NSArray *sortedArray = [array sortedArrayUsingSelector:@selector(compare:)];

        

        NSLog(@"%@",sortedArray);

2.1NSMutableArray

        NSString *xiaoYi = [NSString stringWithFormat:@"xiaoYi

發佈了36 篇原創文章 · 獲贊 6 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章