// 第四章 字符串
//OC字符串:unichar(unicode碼)組成 C語言:ASCII碼
//不可變字符串 NSString 自身的長度以及內容都是不可變的
{
{
NSString *str1 = @"change";
str1 = @"IOS";
//@"change" = @"IOS";錯誤寫法
}
//1.創建字符串的五種方式:
{
//第一種:
NSString *str = @"我勒個去";//語法糖 常量字符串 字面量
//第二種:
NSString *_str = [[NSString alloc]initWithString:@"我勒個去"];
//第三種: 通過一個字符串創建另外一個字符串 用的很少
NSString *str5 = [[NSString alloc]initWithString:str];
//第四種: 創建一個格式化字符串
NSString *str1 = [[NSString alloc]initWithFormat:@"%@, 大溼胸, 師傅被妖怪抓走了", str];//字符串拼接
//第五種:
NSString *str4 = [NSString stringWithFormat:@"%@ %@",str1, str1];//便利構造器
}
//2.字符串的常用方法
{
NSString *str = @"helloworld";
//1.從索引處開始截取,截取到字符串最後
NSString *result = [str substringFromIndex:5];
//2.從字符串開始截取到索引處,但是不包括索引處的字符
NSString *str1 = [str substringToIndex:5];
//3.截取指定範圍內的字符
NSString *str2 = [str substringWithRange:NSMakeRange(2, 5)];
NSRange range = {2, 5};
NSString *str4 = [str substringWithRange:range];
//4.字符串的拼接
NSString *str3 = [str1 stringByAppendingString:str2];
//5.判斷兩個字符串是否相等
BOOL result1 = [str1 isEqualToString:str2];
//6.字符串比較的返回值, 升序, 相等, 降序
NSComparisonResult comparisonResult = [str1 compare:str2];
switch (comparisonResult) {
case NSOrderedAscending:
NSLog(@"str1比str2小");
break;
case NSOrderedSame:
NSLog(@"str1和str2相等");
break;
case NSOrderedDescending:
NSLog(@"str1比str2大");
break;
default:
break;
}
//7.判斷一個字符串是否以**開頭
[str hasPrefix:@"Jen"];
//8.判斷一個字符串是否以**結尾
[str hasSuffix:@"vi"];
//9.是否包含某個字符串
[str containsString:@" l"];
//10.大小寫轉換
NSString *strA = [str uppercaseString];
NSString *strB = [str lowercaseString];
//每個單詞的首字母大寫, 其餘小寫
NSString *strC = [str capitalizedString];
//11.替換
{
//根據範圍來替換
NSString *str = @"蒼蒼老師.rmvb";
NSString *str1 = [str stringByReplacingCharactersInRange:NSMakeRange(5, 4) withString:@"avi"];
//將str中所有的"蒼"替換成"波波"
NSString *str2 = [str1 stringByReplacingOccurrencesOfString:@"蒼" withString:@"波波"];
NSLog(@"%@",str2);
}
//12.OC和C語言字符串的轉換
{
//將C字符串轉換成OC字符串
char *a = "iPhone";
NSString *str = [[NSString alloc]initWithUTF8String:a];
//將OC字符串轉換成C字符串
const char *q = [str UTF8String];
}
}
}
//可變字符串 NSMutableString 繼承不可變字符串 引用不可用字符串方法仍需返回
{
//1.字符串的定義
NSMutableString *mStr = [[NSMutableString alloc]initWithString:@"ione"];
//2.插入字符串
[mStr insertString:@"Ph" atIndex:1];
//3.拼接字符串
[mStr appendString:@"6s"];
//4.根據範圍刪除
[mStr deleteCharactersInRange:NSMakeRange(3, 3)];
NSLog(@"%@",mStr);
//5.替換:替換後可以任意長度
[mStr replaceCharactersInRange:NSMakeRange(3, 2) withString:@"one6s plus"];
}
OC - 第四章 字符串
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.