objective-c NSMutableString 字符串 (3)

NSMutableString 类 继承NSString类,那么NSString 提供的方法在NSMutableString中基本都可以使用,NSMutableString好比一个字符串链表,它可以任意的动态在字符串中添加字符串 删除字符串 指定位置插入字符串,使用它来操作字符串会更加灵活。

 
 
1.字符串尾部添加
 
使用alloc在内存中创建字符串对象后边可以动态的操作这个字符串,修改与添加等。
appendstring 方法:向字符串尾部添加一个字符串。
appendFormat方法:向字符串尾部添加多个类型的字符串,可以添加任意数量与类型的字符串。
 
 1     // Do any additional setup after loading the view, typically from a nib.
 2     NSMutableString * str = [[NSMutableString alloc] init];
 3     
 4     //添加普通的字符串
 5     [str appendString:@"aaa"];
 6     
 7     //添加字符串 整型 字符型
 8     [str appendFormat:@"我的名字:%@ 我的年龄:%d 我的邮箱:%s",@"雨松MOMO", 25,"xuanyusong@gmail.com"];
 9     
10     NSLog(@"str = %@",str);

输出:

2013-12-24 15:30:40.082 Helloworld20131021_NSMutableString[2908:c07] str = aaa我的名字:雨松MOMO 我的年龄:25 我的邮箱:xuanyusong@gmail.com

2.字符串中删除元素

 
stringWithString 方法:用于创建字符串初始化赋值
rangeOfString方法:传入字符串返回一个在该字符串中的范围 也可以写 NSMakeRange(0, 3) 意思是范围在字符串0位到第3位
deleteCharactersInRange:删除字符串 参数为Range 就是删除的范围。
1 //创建字符串
2     NSMutableString *str1 = [NSMutableString stringWithString:@"雨松MOMO喜欢哇咔咔~"];
3     
4     //删除字符串中含"雨松"的字符
5     [str1 deleteCharactersInRange: [str1 rangeOfString: @"雨松"]];
6     
7     NSLog(@"str1 = %@",str1);

输出:

2013-12-24 15:30:40.083 Helloworld20131021_NSMutableString[2908:c07] str1 = MOMO喜欢哇咔咔~

3.字符串插入

 
stringWithString 方法:用于创建字符串初始化赋值
insertString方法:第一个参数 插入的字符串对象, 第二个参数 插入的位置。
1  //创建字符串
2     NSMutableString *str2 = [NSMutableString stringWithString:@"雨松MOMO喜欢哇咔咔~"];
3     
4     //在str第10位插入字符串
5     [str2 insertString:@"与小可爱" atIndex:10];
6     
7     NSLog(@"str2 = %@",str2);

输出:

2013-12-24 15:30:40.084 Helloworld20131021_NSMutableString[2908:c07] str2 = 雨松MOMO喜欢哇咔与小可爱咔~

4.字符串拷贝

 1  
 2     //创建字符串
 3     NSMutableString *str3 = [NSMutableString stringWithString: @"字符串1"];
 4     NSMutableString *str4;
 5     
 6     //字符串赋值
 7     str4 = str3;
 8     
 9     [str4 appendString: @" 和字符串2"];
10     
11     NSLog (@"str3= %@", str3);
12     
13     NSLog (@"str4 = %@", str4);

输出:

2013-12-24 15:30:40.084 Helloworld20131021_NSMutableString[2908:c07] str3= 字符串1 和字符串2

2013-12-24 15:30:40.085 Helloworld20131021_NSMutableString[2908:c07] str4 = 字符串1 和字符串2

5.字符串与指定类型转换

 
如果转换的参数非法的话不会抛出异常,好比用中文去转整型。不会报错 但是转换结果为 0  ,默认值。
 1  //字符串转整型
 2     NSString *str0 = @"1121";
 3     //NSString *str0 = @"中国";
 4     
 5     //把字符串强转成整型
 6     int i = [str0 intValue];
 7     
 8     NSLog (@"转换后:%i", i);
 9     
10     //字符串转interger
11     NSString *str5 = @"1985";
12     // NSString *str1 = @"中国";
13     
14     //把字符串强转成interger
15     NSInteger ii = [str5 integerValue];
16     
17     NSLog (@"转换后:%i", ii);
18     
19     //字符串转double
20     NSString *str6 = @"3.145926";
21     //NSString *str2 = @"中国";
22     
23     //把字符串强转成double
24     double d = [str6 doubleValue];
25     
26     NSLog (@"转换后:%f", d);
27     
28     //字符串转float
29     NSString *str7 = @"3.145926";
30     //NSString *str3 = @"中国";
31     //把字符串强转成float
32     
33     double f = [str7 floatValue];
34     
35     NSLog (@"转换后:%f", f);
36     
37     NSString *str8 = @"中国";
38     
39     //把字符串强转成整型
40     int i8 = [str8 intValue];
41     
42     NSLog (@"转换后:%i", i8);

输出:

2013-12-24 15:30:40.085 Helloworld20131021_NSMutableString[2908:c07] 转换后:1121

2013-12-24 15:30:40.086 Helloworld20131021_NSMutableString[2908:c07] 转换后:1985

2013-12-24 15:30:40.086 Helloworld20131021_NSMutableString[2908:c07] 转换后:3.145926

2013-12-24 15:30:40.087 Helloworld20131021_NSMutableString[2908:c07] 转换后:3.145926

2013-12-24 15:30:40.087 Helloworld20131021_NSMutableString[2908:c07] 转换后:0

http://www.xuanyusong.com/archives/388

原文地址:https://www.cnblogs.com/aosting/p/3489165.html