標籤:
知識點
1.NSString 類的使用
2.NSMutableString 類的使用
==========================================
NSString
1.NSString對象和C類型字串做對比
// OC字串是對象 c字串只是單個字母拼接
// oc字串定義需要@ c字串不需要
// 列印的時候OC字串%@ c字串列印%s
2.c語言字串和NSString的轉換
stringWithCString:encoding:函數
作用:將c字串按照指定的編碼方式轉換為oc字串對象
3.NSString的建立方式
1)根據現有的c字串建立
2)stringWithFormat函數拼接字串<重要>
作用:根據指定格式建立
3)initWithUTF8String函數
作用:通過手動記憶體配置,並且以C字串初始化NSString對象
4)stringWithString函數
作用:通過現有的NSString對象的到一個一樣的字串對象
==================================
NSString的常用方法
1.比較兩個字串是否相等
思考:是否可以通過s1 == s2比較兩個字串相等
isEqualToString函數<重要>
作用:比較2個字串是否相等,如果相等返回YES,不等返回NO
2.如何得到字串的長度
1)length函數<重要>
作用:取得指定字串對象的長度,返回NSUInteger
3.字串轉化為數字
- (double)doubleValue;
- (float)floatValue;
- (int)intValue;
- (NSInteger)integerValue;
- (long long)longlongValue;
- (BOOL)boolValue;
4.大小寫轉化
- (NSString *)uppercaseString; // 轉成大寫
- (NSString *)lowercaseString; // 轉成小寫
5.判斷前尾碼
尾碼:hasSuffix
首碼:hasPrefix:
6字串拼接
1) stringByAppendingString 簡單字串拼接
2)stringByAppendingPathComponent 拼接路徑字串
7.如何比較兩個字串的大小<重要>
compare函數 s1 == s2
作用:比較兩個字串對象的大小,返回一個NSComparisonResult的枚舉結果
NSOrderedAscending = -1表示左側數值小於右側;
NSOrderedSame = 0 則相等
NSOrderedDescending = 1表示右側數值小於左側;
8.如何在一段字串中提取出子字串
1)characterAtIndex函數<重要>
作用:取出指定位置中的字元
2)substringFromIndex函數
作用:從指定位置開始向後提取字串
3)substringToIndex函數
作用:提取從開頭到指定位置的字串
4)如何在一段字串中尋找另一個字串
1)rangeOfString函數@"hello world" @"world"
2)從左邊開始尋找: rangeOfString<重要>
從後面開始尋找;rangeOfString options:NSBackwardsSearch
作用:尋找目標指定字串是否在目標字串中
如果存在,返回的NSRange中會包含起始位置和長度
如不存在,NSRange.location == NSNotFound
練習:1.尋找"Hi,I am fine,and you"中"fine"字串的位置
5)substringWithRange<重要>
作用:提取一個區間位置的字串
NSRange結構體和NSMakeRange函數
作用:建立一個區間,用以告訴字串對象要提取的子串範圍
練習: 1.從"Hi,I am fine,and you"中提取出"I am fine,and you"子串
2.從"Hi,I am fine,and you"中提取出"Hi,I am fine"子串
3.從"Hi,I am fine,and you"中提取出"I am fine"子串
—— 數下標———
sub*****
—— 不數下標——
range***
sub****
練習:
在一個字串裡尋找另外一個字串出現的次數;
NSString *str1 = @“我是一個字串 字串 字串”
NSString *Str2 = @“字串”
=================================
NSMutableString
1.NSMutableString和NSString的關係
2.如何建立一個NSMutableString對象
1)string函數
作用:建立一個空的可變字串對象 空串
=================================
NSMutableString的常用方法
1.如何重設NSMutableString的內容
1)setString函數
作用:將當前字串中的內容設定為新的字串
2.如何在字串後面新增內容
1)appendString函數
作用:在當前字串末尾追加新的字串
2)appendFormat函數<重要>
作用:通過指定格式追加
練習:1.分別定義姓名,年齡,性別變數並初始化
最後將該些變數通過上述方法追加到"hello"字串後
3.如何在字串中插入內容<重要>
1)insertString:atIndex函數
作用:將指定字串插入到目標字串指定位置
4.如何刪除字串中的內容
1)deleteCharactersInRange函數
作用:刪除NSRange指定範圍中的字串
5.如何修改其中一段內容<重要>
1)replaceCharactersInRange:withString函數
作用:將NSRange指定範圍中的字串替換為指定內容
練習:
字串的逆序:
NSString *s = @“fire in the hole”;
@“eloh eht ni erif”;
length , char*****, append****
思路: 從字串最後一個字元開始擷取,一個字一個字地擷取出來, 添加到可變字串後面;
字串單詞逆序:
@“fire in the hole”;
每一個單詞以一個空格隔開:
@“hole the in fire”;
rangeOf: options:NSBackWarkSearch, substringFromIndex: , appendString, substringToIndex:
while(1)
{
}
思路: 從後面開始尋找空格“ ”, 擷取後面字串,添加到一個可變字串後面, 擷取子串繼續尋找;
==================================
類中的description方法
description方法是NSObject類的一個執行個體方法,所有的objective-C類都是NSObject類的子類,因此所有的Objective-C對象都具有description方法。該方法通常用於實現自我描述資訊的列印。
description方法的預設實現是返回這樣的格式: <類名: 地址>;
重寫:
- (NSString *)description
{
return oc的字串;
}
=========================================================
作業:
1、在字串welcome to qianfeng中刪除to
2、hello world中間插入qianfeng: hello qianfeng world
3、@"When I was young, I loved a girl on neighbour class." 替換部分成:
When I was teacher, I rather teaching the students on neighbour class.
4、在字串When I was young, I loved a girl on neighbor class.裡找出 字串was young,I loved a girl
5、把三個字串My name is Sean,I come from China,I am 45 years old串連起來成一個字串;
6、welcome to guangzhou 根據範圍找出字串come
7、welcome to guangzhou 找出字串guangzhou字串的範圍;
Objective-C 字串與可變字串