Chuỗi Objective-C

Chuỗi trong ngôn ngữ lập trình Objective-C được biểu diễn bằng NSString và lớp con của nó NSMutableString cung cấp một số cách để tạo các đối tượng chuỗi. Cách đơn giản nhất để tạo một đối tượng chuỗi là sử dụng cấu trúc Objective-C @ "..." -

NSString *greeting = @"Hello";

Dưới đây là một ví dụ đơn giản để tạo và in một chuỗi.

#import <Foundation/Foundation.h>

int main () {
   NSString *greeting = @"Hello";
   NSLog(@"Greeting message: %@\n", greeting );

   return 0;
}

Khi đoạn mã trên được biên dịch và thực thi, nó tạo ra kết quả như sau:

2013-09-11 01:21:39.922 demo[23926] Greeting message: Hello

Objective-C hỗ trợ một loạt các phương pháp để thao tác các chuỗi -

Sr.No. Phương pháp & Mục đích
1

- (NSString *)capitalizedString;

Trả về biểu diễn viết hoa của người nhận.

2

- (unichar)characterAtIndex:(NSUInteger)index;

Trả về ký tự tại một vị trí mảng đã cho.

3

- (double)doubleValue;

Trả về giá trị dấu phẩy động của văn bản của người nhận dưới dạng giá trị kép.

4

- (float)floatValue;

Trả về giá trị dấu phẩy động của văn bản của người nhận dưới dạng số thực.

5

- (BOOL)hasPrefix:(NSString *)aString;

Trả về giá trị Boolean cho biết liệu một chuỗi đã cho có khớp với các ký tự đầu của bộ thu hay không.

6

- (BOOL)hasSuffix:(NSString *)aString;

Trả về giá trị Boolean cho biết liệu một chuỗi đã cho có khớp với các ký tự kết thúc của bộ thu hay không.

7

- (id)initWithFormat:(NSString *)format ...;

Trả về một đối tượng NSString được khởi tạo bằng cách sử dụng một chuỗi định dạng đã cho làm mẫu mà các giá trị đối số còn lại được thay thế.

số 8

- (NSInteger)integerValue;

Trả về giá trị NSInteger của văn bản của người nhận.

9

- (BOOL)isEqualToString:(NSString *)aString;

Trả về giá trị Boolean cho biết liệu một chuỗi đã cho có bằng với người nhận hay không bằng cách sử dụng so sánh dựa trên Unicode theo nghĩa đen.

10

- (NSUInteger)length;

Trả về số ký tự Unicode trong bộ thu.

11

- (NSString *)lowercaseString;

Trả về biểu diễn chữ thường của bộ thu.

12

- (NSRange)rangeOfString:(NSString *)aString;

Tìm và trả về phạm vi xuất hiện đầu tiên của một chuỗi nhất định trong bộ thu.

13

- (NSString *)stringByAppendingFormat:(NSString *)format ...;

Trả về một chuỗi được tạo bằng cách thêm vào bộ nhận một chuỗi được xây dựng từ một chuỗi định dạng đã cho và các đối số sau đây.

14

- (NSString *)stringByTrimmingCharactersInSet:(NSCharacterSet *)set;

Trả về một chuỗi mới được tạo bằng cách xóa từ cả hai đầu của các ký tự nhận có trong một tập ký tự nhất định.

15

- (NSString *)substringFromIndex:(NSUInteger)anIndex;

Trả về một chuỗi mới chứa các ký tự của máy thu từ chuỗi tại một chỉ mục nhất định cho đến cuối.

Ví dụ sau sử dụng một vài hàm được đề cập ở trên:

#import <Foundation/Foundation.h>

int main () {
   NSString *str1 = @"Hello";
   NSString *str2 = @"World";
   NSString *str3;
   int  len ;

   NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

   /* uppercase string */
   str3 = [str2 uppercaseString];
   NSLog(@"Uppercase String :  %@\n", str3 );

   /* concatenates str1 and str2 */
   str3 = [str1 stringByAppendingFormat:@"World"];
   NSLog(@"Concatenated string:   %@\n", str3 );

   /* total length of str3 after concatenation */
   len = [str3 length];
   NSLog(@"Length of Str3 :  %d\n", len );

   /* InitWithFormat */
   str3 = [[NSString alloc] initWithFormat:@"%@ %@",str1,str2];	
   NSLog(@"Using initWithFormat:   %@\n", str3 );
   [pool drain];

   return 0;
}

Khi đoạn mã trên được biên dịch và thực thi, nó tạo ra kết quả như sau:

2013-09-11 01:15:45.069 demo[30378] Uppercase String :  WORLD
2013-09-11 01:15:45.070 demo[30378] Concatenated string:   HelloWorld
2013-09-11 01:15:45.070 demo[30378] Length of Str3 :  10
2013-09-11 01:15:45.070 demo[30378] Using initWithFormat:   Hello World

Bạn có thể tìm thấy danh sách đầy đủ các phương thức liên quan đến Objective-C NSString trong NSString Class Reference.