//NSString初始化的几种方法(3种方法)
        //1.
        NSString *str2 = [[NSString alloc] init];
        //2.
        NSString *str = @"111";
        //3.
        NSString *str1 = [NSString stringWithFormat:@"我叫%@,我的年龄%d",@“KZ”,23];
   
        //字符串str1的长度
        [str1 length]
       
        //判断str1中是否包含str2这个前缀,包含返回YES,不包含返回NO
                      [str1 hasPrefix:str2];
       
        //判断两个字符串是否相等,相等返回YES,不相等返回NO
        [str1 isEqualToString:str2];
       
        //取子串,通过range
        NSRange range = NSMakeRange(2, 3);//(包含下标为2的值)
        str2=[str1 substringWithRange:range];
       
        //从第几个开始取子串,一直取到最后
        str2=[string2 substringFromIndex:3];//(包含下标为3的值)
       
        //这个是从第0个开始取,一直取到第5个
        str2=[string2 substringToIndex:5];//(不包含下标为5的值)
       
        //拼接字符串
        str2 = [@"尚承" stringByAppendingString:@"是一个很好的培训机构"];
       
        //通过逗号分隔一个字符串成一个数组
        NSArray *array = [str2 componentsSeparatedByString:@","];
   
        //这个是将数组转换成JSONString打印出来
        NSLog(@"%@",[array JSONString]);
       
        //字符串转换成小写,大写,首字母大写其余字母小写
        NSString *str3 = @"hello world";
        str2=[str3 lowercaseString];
        str2=[str3 uppercaseString];
        str2=[str3 capitalizedString];
       
        //把c语言里边的字符串指针或字符串数组转换成OC下用到的NSString
        const char *a = "hello";
        str2 = [[NSString alloc] initWithUTF8String:a];
       
        //str1和str2比较大小
        NSComparisonResult result=[str1 compare:str2];
        switch (result){    
            case NSOrderedAscending:{  //升序
                NSLog(@"<");
            }break;
            case NSOrderedDescending:{  //降序
                NSLog(@">");
            }break;
            case NSOrderedSame:{        //相等
                NSLog(@"=");
            }break;
        }
       
        //NSString转换成int float double
        //OC 苹果提倡用NSInteger 32位系统下跟int相同是4bytes 64位系统下跟long相同是8bytes
        str2 = @"100.11";
        NSLog(@"%d",[str2 intValue]);
        NSLog(@"%f",[str2 floatValue]);
        NSLog(@"%lf",[str2 doubleValue]);
        
/*********************************************************************/
/************************** NSMutableString **************************/
/*********************************************************************/
 
        //NSMutableString跟NSString的区别是可以增删改查
        //增加一个子串
        str2=[str1 appendString:@"abc"]
       
        //用NSString实现NSMutableString增加子串的功能
        str2 = [@"" stringByAppendingString:@"abc"];
       
        //删除一个子串
        NSMutableString *str1=[NSMutableString stringWithString:@"abcde"];
        NSString *str2=@"mn";
        NSRange range=NSMakeRange(1,[str2 length]);
        [str1 deleteCharactersInRange:range];
        NSLog(@"%@",str1);//str1=ade;
       
        //用NSString实现NSMutableString删除子串的功能
        NSArray *array3 = [@"abc" componentsSeparatedByString:@"b"];
        NSString *string13 = @"";
        for (NSString *a in array3)
        {
            string13 = [string13 stringByAppendingString:a];
        }
        for (int i = 0; i < [array3 count]; i++)
        {
            NSString *a = [array3 objectAtIndex:i];
            string13 = [string13 stringByAppendingString:a];
        }
       
        //指定位置插入一个子串
        [str2 insertString:@"b" atIndex:1];
   
        //用指定字符串替换对应range的字符串
        //从下标为x的位置开始,删除y个长度的字节,加上新的string
        [str2 replaceCharactersInRange:NSMakeRange(x, y) withString:@"dj"];
        
        //判断字符串@"aBcD_EfGk"中是否有EfGk,如果有将EfGk转换成WXYZ,并让字符串中的大写字母转成小写,输出修改完成的字符串
        NSMutableString *string14 = [[NSMutableString alloc] initWithString:@"aBcD_EfGk"];
        NSRange range14 = [string14 rangeOfString:@"EfGk"];
        if (range14.length != 0)
        {
            [string14 replaceCharactersInRange:range14 withString:@"WXYZ"];
        }
        NSLog(@"%@",[string14 lowercaseString]);
     return 0;
    }

 

KZ--NSString、NSMutableString的更多相关文章

  1. OC之NSString、NSMutableString学习笔记 常用方法

    NSString篇: 1.字符串连接 NSString *beijing = @"北京"; NSString *welcome = [beijing stringByAppendi ...

  2. NSString、NSMutableString基本用法

    NSString其实是一个对象类型.NSString是NSObject(Cocoa Foundation的基础对象)的子类 一.NSString的创建 1.创建常量字符串.NSString *astr ...

  3. NSString、NSMutableString基本使用

    郝萌主倾心贡献.尊重作者的劳动成果,请勿转载. 假设文章对您有所帮助.欢迎给作者捐赠,支持郝萌主.捐赠数额任意.重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源代码下载:点我传送 游戏官方下 ...

  4. OC中Foundation框架之NSString、NSMutableString

    创建方式 )直接赋值 NSString *str =@"abc"; )创建对象 NSString *str2 = [[NSString alloc]init]; str2 =@&q ...

  5. (Foundation)NSObject 、 NSString 、 NSMutableString

    1 重构Student和Book类 1.1 问题 本案例需要创建一个Book类,类中有一个整型price属性,用于记录书的价格.还需要创建一个Student类,类中有两个带参属性,它们是整型的年龄ag ...

  6. iOS 基础类解析 - NSString、NSMutableString

    iOS 基础类解析 - NSString 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 ...

  7. 14.Object-C--浅谈Foundation框架字符串NSString 与NSMutableString

    OC的字符串时经常使用到的,今天我对于OC字符串做一个简单的总结,如果有错误之处,麻烦留言指正.感谢! NSString是一个不可变长度的字符串对象.表示它初始化以后,你不能改变该变量所分配的内存中的 ...

  8. DDD 领域驱动设计-谈谈 Repository、IUnitOfWork 和 IDbContext 的实践(3)

    上一篇:<DDD 领域驱动设计-谈谈 Repository.IUnitOfWork 和 IDbContext 的实践(2)> 这篇文章主要是对 DDD.Sample 框架增加 Transa ...

  9. DDD 领域驱动设计-谈谈 Repository、IUnitOfWork 和 IDbContext 的实践(2)

    上一篇:<DDD 领域驱动设计-谈谈 Repository.IUnitOfWork 和 IDbContext 的实践(1)> 阅读目录: 抽离 IRepository 并改造 Reposi ...

随机推荐

  1. 远程调试weinre的使用

    一.用途 *鉴于在浏览器调试移动端页面无法准确反映移动端实际情况并无法高效调试,故常常使用远程调试工具通过电脑连接手机进行调试,常用远程调试方式: 1.chrome连接安卓机远程调试 2.Mac连接苹 ...

  2. sublime 快键

    Keyboard Shortcuts - Windows/Linux Warning This topic is a draft and may contain wrong information. ...

  3. [转]C# 中的.pdb/ .vshost.exe/ .vshost.exe.manifest文件讨论

    原文出处:http://blog.163.com/chwei_sunshine/blog/static/19412628320125893656652/ pdb文件: 英文全称:Program Dat ...

  4. 给远程桌面发送“Ctrl+Alt+Delete”组合键

    首先: 在运行里,输入osk, 打开软键盘 然后,这时先按下本地键盘的Ctrl和Alt键,再点远程"软键盘"的"Del"键,成功发送"Ctrl+Alt ...

  5. 单击事件的处理方式及注册窗体的创建之(四)Intent实现界面跳转传值

    跳转开发步骤: 创建Intent对象  设置Intent对象的跳转路径  启动Intent //Register_Activity.java case R.id.btnRegister: Inte ...

  6. HDU 1088 - Write a simple HTML Browser

    直接看sample input = = 又一道模拟. #include <iostream> #include <string> #include <cstdio> ...

  7. V - stl 的 优先队列 Ⅱ

    Description Because of the wrong status of the bicycle, Sempr begin to walk east to west every morni ...

  8. visual studio无法输入密匙解决方法

    控制面板->程序和功能->修复/卸载(更改),当到输入密匙界面运行程序,即可出现密匙输入框. 所用程序网上搜索:CrackVS2008ForWindows7

  9. Servlet 学习总结-2

    #重定向与转发的区别 开发Web应用中会遇到从一个页面跳转到另一个页面的问题,在JSP中有两种跳转方式: 1.重定向 2.转发(转向) 重定向:首先服务器受到浏览器客户端请求之后,服务器发送新的链接到 ...

  10. eclipse +cvs 的基本使用方法(一)

    很多时候我们在做项目开发时,会用到cvs,现在我给大家介绍一下关于eclipse下怎么使用cvs管理功能,eclipse本身是自带cvs的,我们只要简单设置一下让它连接到cvs服务器上.    看下图 ...