字符串是很常用的類型。最近的調試中頻繁的出問題,爲了減少調試的困擾,這裏歸納下常見用法,會不斷修正。
1:引用
最簡單的是 NSString* ns = @"test";
再次是:NSString* ns = [ns2 retain];
再次是:lblTest.text = ns2;
大約是直接賦值時如果是字符串對象都要加上retain。至於lable.text估計是在內部執行了retain
2:數據比較
if (ns == @"test") 都是返回false
if ([ns compare:@"test"] != 0) 正確。
3: 指定字串分解
NSRange nsRng = [nsPrevrangeOfString:@"||"];
if (nsRng.length == 0) return false; //查找失敗。
NSString* nsRight =[ nsPrevsubstringFromIndex:nsRng.location + nsRng.length ];
NSString* nsLt = [nsPrevsubstringToIndex:nsRng.location];