NSString类里定义的常用几个对象方法:
1.//在对象后面追加固定的字符串,原对象地址不变,新生成的字符串有另一个地址,把该地址赋值给原对象的指针变量
- (NSString *)stringByAppendingString:(
2.//在对象后面追加带变量的字符串,原来的字符串对象并不改变,只是将新生成的字符串重新赋给原来对象的指针变量
- (NSString *)stringByAppendingFormat:(
3.//获取字符串的长度,格式为:[对象 length] 或者 对象.length(对象.length的实质还是调用length方法)
@property(readonly) NSUInteger length
4.//获取字符串对象前多少个字符组成的字符串
- (NSString *)substringToIndex:(
5.//NSRange的实质为自定义数据类型,typedef struct _NSRange { NSUInteger location;NSUInteger length;} NSRange;
NSRange NSMakeRange ( NSUInteger loc, NSUInteger len);
Description: Creates a new NSRange from the specified values. (从具体的值上创建一个新的NSRange类型的数据)
Return: An
6.// 获取从该字符串对象的某个位置起,一直到末尾的所有字符。
- (NSString *)substringFromIndex:(
7.//获取该字符串对象从某个位置起,长度为n的字符串
- (NSString *)substringWithRange:(
8,//获取一个字符串在该字符串对象中的位置,及其长度
- (NSRange)rangeOfString:(
9.//将该字符串对象的每一个字符全部转换为大写字母(原对象的指针变量保存的地址值改变)
@property(readonly, copy) NSString *uppercaseString
10.//将该字符串对象的每一个小写字符全部转换为小写字母(原对象的指针变量保存的地址值改变)
1.//在对象后面追加固定的字符串,原对象地址不变,新生成的字符串有另一个地址,把该地址赋值给原对象的指针变量
- (NSString *)stringByAppendingString:(
NSString*
) aString
2.//在对象后面追加带变量的字符串,原来的字符串对象并不改变,只是将新生成的字符串重新赋给原来对象的指针变量
- (NSString *)stringByAppendingFormat:(
NSString *
)format
, ...
3.//获取字符串的长度,格式为:[对象 length] 或者 对象.length(对象.length的实质还是调用length方法)
@property(readonly) NSUInteger length
4.//获取字符串对象前多少个字符组成的字符串
- (NSString *)substringToIndex:(
NSUInteger
)anIndex
5.//NSRange的实质为自定义数据类型,typedef struct _NSRange { NSUInteger location;NSUInteger length;} NSRange;
NSRange NSMakeRange ( NSUInteger loc, NSUInteger len);
Description: Creates a new NSRange from the specified values. (从具体的值上创建一个新的NSRange类型的数据)
Return: An
NSRange
with location location
and length length
.(返回NSRange数据类型的数据,该数据包含起始位置和长度)6.// 获取从该字符串对象的某个位置起,一直到末尾的所有字符。
- (NSString *)substringFromIndex:(
NSUInteger
)anIndex
7.//获取该字符串对象从某个位置起,长度为n的字符串
- (NSString *)substringWithRange:(
NSRange
)aRange
8,//获取一个字符串在该字符串对象中的位置,及其长度
- (NSRange)rangeOfString:(
NSString *
)aString
9.//将该字符串对象的每一个字符全部转换为大写字母(原对象的指针变量保存的地址值改变)
@property(readonly, copy) NSString *uppercaseString
10.//将该字符串对象的每一个小写字符全部转换为小写字母(原对象的指针变量保存的地址值改变)
@property(readonly, copy)NSString* lowercaseString
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSString* str = @"Hello";
NSString* str1 = str;
NSString* book = @"<<crazy ios book>>";
NSLog(@"原来的地址为:%p", str);
//在str后面追加固定的字符串
//原来的字符串对象并不改变,只是将新生成的字符串重新赋给str指针变量
str = [str stringByAppendingString: @",iOS!"];
NSLog(@"%@", str);
NSLog(@"str1的内容为:%@", str1);
NSLog(@"现在的地址为:%p", str);
//获取字符串对应的C风格字符串
const char* cstr = [str UTF8String];
NSLog(@"获取的C字符串: %s", cstr);
//在str后面追加带变量的字符串
//原来的字符串对象并不改变,只是将新生成的字符串重新赋给str指针变量
str = [str stringByAppendingFormat: @"%@是一本不错的图书", book];
NSLog(@"%@", str);
NSLog(@"str的字符个数为: %lu", str.length);
NSLog(@"str按UTF-8字符集解码后字节数为: %lu", [str lengthOfBytesUsingEncoding: NSUTF8StringEncoding]);
//获取str的前10个字符组成的字符串
NSString* s1 = [str substringToIndex: 10];
NSLog(@"%@", s1);
//获取str从第5个字符开始,与后面字符组成的字符串
NSString* s2 = [str substringFromIndex: 5];
NSLog(@"%@",s2);
//获取str从第5个字符开始,到第15个字符组成的字符串
NSString* s3 = [str substringWithRange: NSMakeRange(5, 15)];
NSLog(@"%@", s3);
//获取iOS在str中出现的位置
NSRange pos = [str rangeOfString: @"iOS"];
NSLog(@"iOS在str中出现的开始位置: %lu, 长度为: %lu",pos.location, pos.length);
//将str的所有字符转为大写
str = [str uppercaseString];
NSLog(@"%@", str);
}
return 0;
}