• NSString(六)


    NSString定义出来的对象是不可变的字符串。当我们拿到一个NSString对象,不要将它当作数组使用,要当成一个类来使用。

    NSString初始化

    1、

            //NSString(不可变字符串)       

            //我们拿到一个NSString对象,不要当字符数组使用,要当成一个类来使用。。

            //初始化1

            NSString *s1 = @"123";

    2、

            //初始化2,返回一个空的字符串

            //一般不用这样的方式,因为返回的是不可改变的空值

            NSString *s2 = [[NSString alloc] init];

            NSLog(@"s2 = %@",s2);

    便利构造器:

            NSString *s3 = [NSString string];

            NSLog(@"s3 = %@",s3);

    3、

            //创建格式化字符串

            NSString *s4 = [[NSString alloc]initWithFormat:@"%@456",s1];       

            NSLog(@"%@",s4);

    //2015-04-1611:03:20.848 OCLesson4_NSString[1010:49410] 123456

    便利构造器:

            //便利构造器

            NSString *s5 = [NSString stringWithFormat:@"%@789",s4];

            NSLog(@"%@",s5);

    //2015-04-1611:09:01.253OCLesson4_NSString[1037:51375] 123456789

    4、

            //使用字符串初始化字符串       

            NSString *s6 = [[NSString alloc]initWithString:s5];

    便利构造器:

            NSString *s7 = [NSString stringWithString:s6];

            NSLog(@"%@",s7);

    5、写一个txt文档,然后拖到工程里,再将这个工程里的文档拖到initWithContentsOfFile:@" "这个” ”参数里,就会自动识别txt的地址。

            //用文件给字符串赋值

            NSString *s8 = [[NSString alloc]initWithContentsOfFile:@"/Users/lanou3g/Desktop/OC课上代码/OCLesson4_NSString/OCLesson4_NSString/test.txt" encoding:NSUTF8StringEncoding error:nil];

            NSLog(@"%@",s8);//2015-04-16 11:28:06.604 OCLesson4_NSString[1134:58246] haha我们拿到一个NSString对象,不要当字符数组使用,要当成一个类来使用。。

    便利构造器:

            NSString *s9 = [NSString stringWithContentsOfFile:@"/Users/lanou3g/Desktop/OC课上代码/OCLesson4_NSString/OCLesson4_NSString/test.txt" encoding:NSUTF8StringEncoding error:nil];

            NSLog(@"%@",s9);

    NSString的使用:

    1、

            //使用

            //length 用来获取字符串长度

            NSString *testStr = [NSString stringWithFormat:@"123ABCabc456"];

            NSLog(@"%lu",[testStr length]);//2015-04-16 11:37:58.968 OCLesson4_NSString[1197:60748] 6

    2、

            //比较字符串大小

            //NSComparisonResult是一个枚举类型,

            // -1 :前面的 < 后面的

            //  0 :前面的 = 后面的

            //  1 :前面的 > 后面的

            [testStr compare:@"123456"];

    3、

            //比较两个字符串是否相等

            [testStr isEqualToString:@"123"];

    4、

            //判断前缀

            // 包含:返回YES

            // 不包含:返回NO

            BOOL b1 = [testStr hasPrefix:@"1"];

            NSLog(@"%d",b1);//2015-04-16 11:49:27.805 OCLesson4_NSString[1253:64616] 1

           

            BOOL b2 = [testStr hasPrefix:@"13"];

            NSLog(@"%d",b2);//2015-04-16 11:49:27.805 OCLesson4_NSString[1253:64616] 0

    5、

            //判断后缀

            // 包含:返回YES

            // 不包含:返回NO

            bool b3 = [testStr hasSuffix:@"23456"];

            NSLog(@"%d",b3);//2015-04-16 11:55:14.706 OCLesson4_NSString[1292:66018] 1

           

            bool b4 = [testStr hasSuffix:@"65"];

            NSLog(@"%d",b4);//2015-04-16 11:55:14.706 OCLesson4_NSString[1292:66018] 0

    6、

            //是否包含

            //8.0以后,10.10以后才有效。

            bool b5 = [testStr containsString:@"123"];

    7、

            //大小写转换

            //小写转换

            NSString *temp1 = [testStr lowercaseString];(以小写字母印刷)

            NSLog(@"%@",temp1);//2015-04-16 14:46:10.449 OCLesson4_NSString[1641:83987] 123abcabc456

    8、

            //转换大写

            NSString *temp2 = [testStr uppercaseString];(以大写字母印刷)

            NSLog(@"%@",temp2);//2015-04-16 14:47:18.609 OCLesson4_NSString[1653:84450] 123ABCABC456

    9、

            //截取字符串

            //从哪开始截取字符串,并且包含该位置。

            NSString *temp3 = [testStr substringFromIndex:2];

            NSLog(@"%@",temp3);//2015-04-16 14:51:14.002 OCLesson4_NSString[1672:85555] 3ABCabc456

    10、

            //从头开始到指定位置结束截取,不包含该位置。

            NSString *temp4 = [testStr substringToIndex:7];

            NSLog(@"%@",temp4);//2015-04-16 14:53:47.745 OCLesson4_NSString[1686:86307] 123ABCa

    11、

            //截取指定位置指定长度的字符串

            //substringWithRange的参数是一个结构体,结构体中,成员变量:整型的location(位置)和整型的length(长度)

            NSString *temp5 = [testStr substringWithRange:NSMakeRange(3, 3)];//NSMakeRange(3, 3),是oc提供的函数(参数是整型的location,整型的length),用来截取第3个位置开始后长度为3的字符串

            NSLog(@"%@",temp5);//2015-04-16 14:57:17.828 OCLesson4_NSString[1707:87601] ABC

    12、

            //字符串转换成数字。

            NSString *s10 = @"123";

            int num1 = [s10 intValue];//只有在字符串里边全部都是数字的时候,才能转换。

            NSLog(@"%d",num1);//2015-04-16 15:00:42.354 OCLesson4_NSString[1728:88795] 123

  • 相关阅读:
    Android 5.0 + IDA 6.8 调试经验分享
    UVA 10003
    欧拉项目010:2000000以内的素数和
    Intellij IDEA 配置Subversion插件
    Intellij IDEA 配置Subversion插件时效解决方法
    javascript 关键字不能作为变量来使用
    JavaScript 闭包(个人理解)
    启动IntelliJ IDEA 2016报错:cannot start under Java 1.7 : Java 1.8 or later is required 解决办法
    jquery easyui tree异步加载子节点
    10.2.1itools导入不了歌曲
  • 原文地址:https://www.cnblogs.com/DevinSMR/p/5118570.html
Copyright © 2020-2023  润新知