字符串是很常用的类型。最近的调试中频繁的出问题,为了减少调试的困扰,这里归纳下常见用法,会不断修正。
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];