OC字符串
-
字符串的創(chuàng)建
1.字面量創(chuàng)建
NSString *str = @"hello";
NSLog(@"%@", str);
2.格式串創(chuàng)建
格式串創(chuàng)建是最常用的字符串創(chuàng)建方法之一, 用來做數(shù)據(jù)類型轉(zhuǎn)換.
1.初始化方法創(chuàng)建
int a = 10;
NSString
2.便利構(gòu)造器創(chuàng)建
NSString *str = [NSString stringWithFormat:@"hello %d", a];
3.用字面量創(chuàng)建一個字符串 (語法糖, 使程序員閱讀和使用更加方便), 使用字面量創(chuàng)建的字符串是不可變的;
-
將c語言里的字符串轉(zhuǎn)化成oc里的字符串對象
1.初始化方法
char *str = "heLlo";
NSString *str1 = [[NSString alloc] initWithUTF8String:str];
2.便利構(gòu)造器
NSString *str1 = [NSString stringWithUTF8String:str];
-
字符串的一些方法應(yīng)用
1.求字符串長度
NSLog(@"str1 length : %lu", str1.length);
2.將字符串中的字符全部轉(zhuǎn)化成大寫
NSLog(@"lowercase : %@", [str1 lowercaseString]);
3.首字符大寫,其他的小寫
NSLog(@"capitalized : %@", [str1 capitalizedString]);
4.判斷兩個字符串是否內(nèi)容相同
NSString *string1 = @"asdqsdqsdqsdqsdq";
NSString *string2 = @"ssdwwe";
if ([string1 isEqualToString:string2]) {
NSLog(@"字符串內(nèi)容相同");
} else {
NSLog(@"字符串內(nèi)容不同");
}
5.字符串拼接
NSString *appendString = [string1 stringByAppendingString:@"hello"];
NSLog(@"append : %@", appendString);
6.根據(jù)索引值取字符
>NSLog(@"%c", [string1 characterAtIndex:2]);
7.取子字符串
(1)索引值不允許超出字符串范圍, 否則不越界訪問, 引起程序崩潰
substringFromIndex: 從索引值處開始取子串到字符串結(jié)束 (包括索引值處的字符)
NSLog(@"%@", [string1 substringFromIndex:1]);
(2)substringToIndex: 從字符串開始出取子串, 取到索引值位置為止 (不包含索引值處的字符)
NSLog(@"%@", [string1 substringToIndex:5]);
(3) NSRange:表示一個范圍的結(jié)構(gòu)體
成員變量1 : location: 開始位置
成員變量2 : length: 長度
快速創(chuàng)建一個NSRange可以使用NSMakeRange函數(shù)
NSLog(@"%@", [string1 substringWithRange:NSMakeRange(1, 3)]);
(4)也可以通過一個字符串獲取到在另一個字符串中所占的位置和長度(range), 獲取到的第一個結(jié)束
NSRange range = [string1 rangeOfString:@"wer"];
NSLog(@"location : %ld, length : %ld", range.location, range.length);
8.字符串替換
將字符串中某一特定字符串全部進行替換
參數(shù)1: 需要被替換的字符串
參數(shù)2: 替換為哪個字符串
NSLog(@" %@", [string1 stringByReplacingOccurrencesOfString:@"ert" withString:@"asd"]);