建立一个常量字符串对象 须要在字符串开头放置一个@符号 ,例如:spa
@"Hello OC~~".net
专门用于log日志输出调试
NSString *str = @"Hello OC~~~"; NSLog(@"%@",str);
上面的代码首先建立字符串对象str 而后用nslog将值显示出来
日志
nslog格式字符 %@ 不只能够显示NSString对象 还能够显示其余对象
code
为了方便调试 咱们能够在本身的类中重写description方法 好比 orm
#import <Foundation/Foundation.h> @interface Fraction : NSObject -(void)add; @end @implementation Fraction -(void)add{ NSLog(@"--->add"); } -(NSString *)description{ return [NSString stringWithFormat:@"---->"]; } @end int main(int argc, const char * argv[]) { @autoreleasepool { Fraction* mFraction = [[Fraction alloc] init]; NSLog(@"%@",mFraction); } return 0; }
输入的结果就是 ----> 对象
建立字符串对象时 会建立一个内容不可改变的对象,这个对象称为不可变对象索引
能够使用NSString类处理不可变字符串 ip
若是常常须要处理字符串或者更改字符串中的字符 咱们可以使用NSMutableString类字符串
[str length];
[NSString stringWithString: str1];
[str stringByAppendingString:@""];
[str1 isEqualToString : str2]
[str uppercaseString];
[str lowercaseString];
switch ([str1 compare:str2]) {
case NSOrderedDescending:
//str1 > str2
break;
case NSOrderedSame:
//str1 = str2
break;
case NSOrderedAscending:
//str1 < str2;
break;
default:
break;
}
大小写不区分 能够使用 caseInsensitiveCompare
[str caseInsensitiveCompare:@""];
[str substringToIndex:n];
[str substringFromIndex:n];
[[str substringFromIndex:n] substringToIndex: (m-n)];
[str substringWithRange:NSMakeRange(n, (m-n))];
NSString *str = @"abcdefghijklmnopq";
NSRange range = [str rangeOfString:@"cde"];
NSLog(@"位置:%lu 长度:%lu",range.location,range.length);