建立一個常量字符串對象 須要在字符串開頭放置一個@符號 ,例如: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);