objective-C 文字列

( iPhone )

NSString:インスタンスを生成した後に文字列を変更できない静的な文字列クラス NSMutableString:インスタンスを生成した後も文字列を変更できる動的なクラス

■継承関係 NSObject ↓ NSString ↓ NSMutableString
■文字列定数 @”文字列”
NSString* str = [ @"ABC" length ] // "ABC"の文字数
NInteger len = [ @"ABC" length ] // "ABC"の文字数 (int)
NUInteger len = [ @"ABC" length ] // "ABC"の文字数 (unsigned int)


// copy
NSString* str = [ NSString stringWithString: @"Hello" ];

// @"hello"という文字列のインスタンスをstrに代入
NSString* str = @"hello";
NSMutableString* str = [ NSMutableString stringWithString: @"hello" ];

// 書式ありの文字列
int min = 12;
NSString str = [ NSString stringWithFormat: @"Time : %d", min ];
NSString str = [ NSString stringWithFormat: @"Time : %04d", min ];

// オブジェクトを代入したい場合は「%@」を記述する
NSString name = @"nakajijapan";
NSString str = [ NSString stringWithFormat: @"Time : %@", name ];

// debug
//    コンソールに表示される
NSString name = @"nakajijapan"
NSLog( @"My name is %@", name );


// 文字列の連結
NSString* str1 = @"My name is ";
NSString* str2 = [ str1 stringByAppendingString : @"nakajijapan." ];



// 文字列を一部切り出す
//    NSRangeは「NSUInteger」を持っている
NSRange range = {1,3};
NSString* str = [ @"iPhone" substringWithRange : range ];