📅  最后修改于: 2020-11-03 15:56:38             🧑  作者: Mango
使用NSString表示Objective-C编程语言中的字符串,其子类NSMutableString提供了几种创建字符串对象的方法。创建字符串对象的最简单方法是使用Objective-C @“ …”构造-
NSString *greeting = @"Hello";
下面显示了一个创建和打印字符串的简单示例。
#import
int main () {
NSString *greeting = @"Hello";
NSLog(@"Greeting message: %@\n", greeting );
return 0;
}
当上面的代码被编译和执行时,产生的结果如下:
2013-09-11 01:21:39.922 demo[23926] Greeting message: Hello
Objective-C支持多种用于处理字符串的方法-
Sr.No. | Method & Purpose |
---|---|
1 |
– (NSString *)capitalizedString; Returns a capitalized representation of the receiver. |
2 |
– (unichar)characterAtIndex:(NSUInteger)index; Returns the character at a given array position. |
3 |
– (double)doubleValue; Returns the floating-point value of the receiver’s text as a double. |
4 |
– (float)floatValue; Returns the floating-point value of the receiver’s text as a float. |
5 |
– (BOOL)hasPrefix:(NSString *)aString; Returns a Boolean value that indicates whether a given string matches the beginning characters of the receiver. |
6 |
– (BOOL)hasSuffix:(NSString *)aString; Returns a Boolean value that indicates whether a given string matches the ending characters of the receiver. |
7 |
– (id)initWithFormat:(NSString *)format …; Returns an NSString object initialized by using a given format string as a template into which the remaining argument values are substituted. |
8 |
– (NSInteger)integerValue; Returns the NSInteger value of the receiver’s text. |
9 |
– (BOOL)isEqualToString:(NSString *)aString; Returns a Boolean value that indicates whether a given string is equal to the receiver using a literal Unicode-based comparison. |
10 |
– (NSUInteger)length; Returns the number of Unicode characters in the receiver. |
11 |
– (NSString *)lowercaseString; Returns lowercased representation of the receiver. |
12 |
– (NSRange)rangeOfString:(NSString *)aString; Finds and returns the range of the first occurrence of a given string within the receiver. |
13 |
– (NSString *)stringByAppendingFormat:(NSString *)format …; Returns a string made by appending to the receiver a string constructed from a given format string and the following arguments. |
14 |
– (NSString *)stringByTrimmingCharactersInSet:(NSCharacterSet *)set; Returns a new string made by removing from both ends of the receiver characters contained in a given character set. |
15 |
– (NSString *)substringFromIndex:(NSUInteger)anIndex; Returns a new string containing the characters of the receiver from the one at a given index to the end. |
以下示例利用了上述几个功能-
#import
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;
}
当上面的代码被编译和执行时,产生的结果如下:
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
您可以在《 NSString类参考》中找到与Objective-C NSString相关的方法的完整列表。