zoukankan      html  css  js  c++  java
  • NSString的形式--可变字符串--增方法Append

    字符串除了有创建的几种方法, 大小长度的对比, 还有它的另一种形式, 就是可变字符串, 由其他的几种方法创建的字符串都是不可变的, 一旦创建了之后就固定不变, 但是可变字符串就是在创建之后还可以改变覆盖原有的字符串.

    可变字符串的方法;

    NSMutableString: 它的意思就是, 使用了NSMutableString该方法创建的字符串会改变并覆盖原来创建的字符串内容.

     

    下面是改字符串简单的使用例子:

    //这里是增方法的例子, 增是什么呢?
    //增有一个叫做追加(append)的方法: 追加就是在字符串的结尾处增加一部分字符, 形成一个新的字符串.
    //增还有一种方法叫做插入(insert): 它对应有一个方法.
    #import <Foundation/Foundation.h>
    
    int main(int argc, const char * argv[]) {
        @autoreleasepool {
            //NSMutableString是继承与NSString的, 所以NSString里面的方法
            //在NSMutableString中也可以全部使用.
            //但由于NSMutableString是属于可变字符串, 所以会比NSString多一些方法.
            //增加的方法就是"增删改查"
            
    //        NSMutableString *str = @"Helllo";
            //这种方法在可变字符串中不可以使用, 因为这种创建方法.
            //表示的是创建一个不可变的字符串.
            //除了这种创建不可变的字符串方法, 其他创建方法都可以使用.
            
            //创建可变字符串方法
            //第一种:
            //NSMutableString *str = [[NSMutableString alloc]initWithString:@"Hello"];
            //第二种:
            NSMutableString *str = [NSMutableString new];
            [str setString:@"Hello"];
            [str setString:@"Wrold"];
            //如果在Hello下面再设定一个Wrold, 那么就会代替原来Hello, 以此类推.
            //不可变字符串永远做不到可变字符串的事情.
            
            //追加字符串的方法.
            [str appendString:@" World World"];
            
            //追加格式符, appendFormat可以用来追加数字, 字符等等参数.
            [str appendFormat:@" %c ", 'a'];
            
            //插入字符串方法.
            [str insertString:@" XXXX " atIndex:4];
            //这句话的意思就是, 我要把这四个大红叉插入原有的从第四个字符开始的位置, 而原有的第四个字符就会挪到这四个大红叉的后面.
            
            //由于insertString没有Format版本, 我们可以先创建一个临时的字符串, 然后再把临时的字符串传入到你想传入的位置.
            [str insertString:[NSString stringWithFormat:@" %d ", 5] atIndex:6];
            //PS:这里用的NSString stringWithFormat方法, 返回去的是这个方法的地址, 而不是里面的值.
            
            NSLog(@"
    str = %@", str);
        }
        return 0;
    }

    输出的结果:

            //没有声明Wrold的输出结果:
            //2014-10-11 00:05:46.364 NSMutableString[21517:303]
            //str = Hello
            //Program ended with exit code: 0
            
            
            //声明了Wrold的输出结果:
            //2014-10-11 00:04:44.633 NSMutableString[21506:303]
            //str = Wrold
            //Program ended with exit code: 0

    第三种的增输出结果:

    2014-10-11 16:03:25.271 NSMutableString[1299:303] 
    str = Wrol X 5 XXX d World World a 
    Program ended with exit code: 0
  • 相关阅读:
    linux 之 系统监控
    Spring Cloud Eureka 常用配置及说明
    mysql的事务隔离级别
    什么场景中会用到java多线程(转)
    springboot配置druid连接池
    MyBatis标签详解(转)
    关于@JsonSerialize注解的使用方法
    layer绑定回车事件(转)
    php7+apache2.4配置
    Eclipse创建Maven项目不支持el表达式的解决方式
  • 原文地址:https://www.cnblogs.com/iOSCain/p/4018692.html
Copyright © 2011-2022 走看看