Objective-C中NSString和NSMutableString的基本用法
int main(int argc, const char * argv[])
{ @autoreleasepool { //----------------NSString-----------------------------
NSString *str1 = @"这是一个字符串常量";
NSLog(@"str1 = %@",str1);
//创建一个空字符串
NSString *str2 = [[NSString alloc]init];
NSString *str3 = [NSString string];
NSLog(@"str2 = %@",str2);
NSLog(@"str3 = %@",str3);
//快速创建一个字符串
NSString *str4 = [[NSString alloc]initWithString:str1];
NSString *str5 = [NSString stringWithString:str1];
NSLog(@"str4 = %@",str4);
NSLog(@"str5 = %@",str5);
//创建一个格式化字符串
NSString *str6 = [[NSString alloc]initWithFormat:@"%d",10];
NSString *str7 = [NSString stringWithFormat:@"%.2f",10.8099887];
NSLog(@"str6 = %@",str6);
NSLog(@"str7 = %@",str7); //比较两个字符串内容是否相等
if ([str6 isEqualToString:str7]) {
NSLog(@"str6 is EqualToString str7");
}else{
NSLog(@"str6 is not EqualToString str7");
} //转换为基本数据类型
NSString *str8 = @"3";
float f1 = [str8 floatValue];
NSLog(@"str8 = %.2f",f1); //字符串拆分为数组
NSString *str9 = @"命 运 就 算 颠 沛 流 离";
NSArray *array = [str9 componentsSeparatedByString:@" "];
NSLog(@"array = %@",array);
NSLog(@"array[0] = %@",array[0]); //截取字符串
NSString *str10 = @"123456789";
NSString *subStr1 = [str10 substringToIndex:4];
NSString *subStr2 = [str10 substringFromIndex:6];
NSLog(@"subStr1 = %@",subStr1);
NSLog(@"subStr2 = %@",subStr2); NSRange range = {4,2};
NSString *subStr3 = [str10 substringWithRange:range];
NSLog(@"subStr3 = %@",subStr3); //拼接字符串
NSString *str11 = @"123";
NSString *str12 = @"456";
NSString *appStr1 = [[NSString alloc]initWithFormat:@"%@%@",str11,str12];
NSString *appStr2 = [str11 stringByAppendingFormat:@"%@",str12];
NSString *appStr3 = [str11 stringByAppendingString:str12];
NSLog(@"appStr1 = %@",appStr1);
NSLog(@"appStr2 = %@",appStr2);
NSLog(@"appStr3 = %@",appStr3); //查找字符串
NSString *str13 = @"qweradsfzxcvqazxsw";
NSRange range1 = [str13 rangeOfString:@"dsfzx"];
NSLog(@"%@",NSStringFromRange(range1));
NSLog(@"%d",range1.location);
if (range1.location != NSNotFound) {
NSLog(@"str found");
}else{
NSLog(@"str not found");
} /*------------NSMutableString 可变字符串-----------------*/
//插入
NSMutableString *mStr1 = [[NSMutableString alloc] initWithFormat:@"abcd"];
[mStr1 insertString:@"defg" atIndex:4]; //注意:此处为在源字符串上修改,并未生成新的字符串
NSLog(@"mStr1 = %@",mStr1); //替换
[mStr1 replaceCharactersInRange:NSMakeRange(4, 4) withString:@"1234"];
NSLog(@"%@",mStr1); //删除
[mStr1 deleteCharactersInRange:NSMakeRange(4, 4)];
NSLog(@"%@",mStr1);
}
return 0;
}
Objective-C中NSString和NSMutableString的基本用法的更多相关文章
- Objective - C 中NSString (字符串)与C中的字符串转换问题
NSString是一个常用的类,NSString是原生支持unicode C中的字符串 比如char * a = "hello world"; 是utf8类型的, char* d ...
- bjective-C 中核心处理字符串的类是 NSString 与 NSMutableString
Objective-C 中核心处理字符串的类是 NSString 与 NSMutableString ,这两个类最大的区别就是NSString 创建赋值以后该字符串的内容与长度不能在动态的更改,除非重 ...
- 关于NSString和NSMutableString的相关用法和基本介绍
Objective-C 中核心处理字符串的类是 NSString 与 NSMutableString ,这两个类最大的区别就是NSString 创建赋值以后该字符串的内容与长度不能在动态的更改,除非重 ...
- objective C中的字符串NSStirng常用操作
objective C中的字符串操作 在OC中创建字符串时,一般不使用C的方法,因为C将字符串作为字符数组,所以在操作时会有很多不方便的地方,在Cocoa中NSString集成的一些方法,可以很方便的 ...
- Foundation框架-NSString和NSMutableString
可变与不可变的字符串 --1-- Foundation框架介绍 1.1 框架介绍 --2-- NSString 2.1 NSString介绍及使用 2.2 NSString创建方式 2.3 从文件中 ...
- NSString和NSMutableString常用方法+NSArray常用代码 (转)
常见的NSString和NSMutableString方法: NSString方法: [plain] view plaincopy +(id) stringWithContentsOfFile:p ...
- iOS基础-NSString及NSMutableString剖析
一.NSString头文件 NSString : NSObject 实现协议: NSCopying/NSMutableCopying/NSSecureCoding 类别: //扩展类别 NSStrin ...
- OC第二节 —— NSString和NSMutableString
1.为什么需要NSString对象 答:在OC中创建字符串时,一般不使用C的方法, 因为C将字符串作为字符数组,所以在操作时会有很多不方便的地方, 在Cocoa中NSStri ...
- NSString和NSMutableString的创建及其一些常用方法
NSString和NSMutableString都是对象类型,是NSObject的子类.NSString是不可变字符串,NSMutableString是可变字符串 一.NSString的创建 1.创建 ...
随机推荐
- 《Learn python the hard way》Exercise 48: Advanced User Input
这几天有点时间,想学点Python基础,今天看到了<learn python the hard way>的 Ex48,这篇文章主要记录一些工具的安装,以及scan 函数的实现. 首先与Ex ...
- Java中线程池的学习
线程池的基本思想还是一种对象池的思想,开辟一块内存空间,里面存放了众多(未死亡)的线程,池中线程执行调度由池管理器来处理.当有线程任务时,从池中取一个,执行完成后线程对象归池,这样可以避免反复创建线程 ...
- 专题笔记--Java 类集框架
Java 类集框架 1. Java类集框架产生的原因 在基础的应用中,我们可以通过数组来保存一组对象或者基本数据,但数组的大小是不可更改的,因此出于灵活性的考虑和对空间价值的担忧,我们可以使用链表来实 ...
- MergeSort 归并排序
实现: 二路归并 public class TestMergeSort { public int[] mergeSortArray(int[] arr, int left, int right){ i ...
- Ubuntu mysql安装,还有可视化界面
安装mysql sudo apt-get install mysql-server sudo apt-get install mysql-client sudo apt-get install lib ...
- jQuery获取select option
jQuery的一些方法理出一些常用的方法: //获取第一个option的值 $('#test option:first').val(); //最后一个option的值 $('#test option: ...
- Struts分页
1.分页的bean类PaginationSupport.java 2.写好后直接在action里面调用,计算当前页显示的数据 3.写一个公用的jsp页面,直接在需要分页的页面include就可以了 ...
- java 正则表达式获取值
@Test public void testtest() { String test = "hahahhehe sendCode\":\"12367890123rsdfs ...
- 你必须掌握的Java基础:JSON解析工具-json-lib
一.简介 json-lib是一个Java类库,提供将Java对象,包括beans,maps,collections,java arrays和xml等转换成JSON,或者反向转换的功能. 二.准备 在 ...
- Win32多线程编程(3) — 线程同步与通信
一.线程间数据通信 系统从进程的地址空间中分配内存给线程栈使用.新线程与创建它的线程在相同的进程上下文中运行.因此,新线程可以访问进程内核对象的所有句柄.进程中的所有内存以及同一个进程中其他所有线 ...