关于NSString的一些用法

#import <Foundation/Foundation.h>

//定义一个宏  代替NSLog(@"%@", str);
#define PRINT(str) NSLog(@"%@", str);

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        
        //NSString  不可变字符串
        //使用@ + ""编译器自动的帮你开辟内存、初始化
        NSString *string = @"a OC string";
        
        //使用property声明的成员属性  (编译器自动的生成了setter和getter方法)
        //  1  返回的是字符串的长度
        NSUInteger len = [string length];
        NSLog(@"%lu", len);
        
        //  2  初始化方法   变参  根据参数1的格式控制符 变动
        //initWithFormat:    (实例方法)
        NSString *string2 = [[NSString alloc] initWithFormat:@"使用串1:%d", 100];
        
        NSLog(@"%@", string2);
        
        //  3  初始化
        //stringWithFormat:  (类方法)
        NSString *string3 = [NSString stringWithFormat:@"%@ %d", @"类方法", 99];
        
        NSLog(@"%@", string3);
        
        //  4  初始化     参数  C语言常量字符串
        //initWithUTF8String:
        char *c_string = "C语言常量串";
        NSString *string4 = [[NSString alloc] initWithUTF8String:c_string];
        //NSLog(@"%@", string4);
        PRINT(string4)
        
        //  5  UTF8   编码格式
        //ASC1  ASC2  占一个字节  符号、数字、英文字母
        //Unicode编码一种  UTF-8  (万国码)符号、数字、英文字母、各国语言文字
        //字符串每一个组成字符都是unichar(OC)   GB2312
        UniChar unch = [string4 characterAtIndex:2];
        NSLog(@"%C %lu", unch, sizeof(unch));
        
        //  6  提取特定索引的字符
        //characterAtIndex:
        
        //  7  根据索引提取索引到最后的所有元素
        //substringFromIndex:
        NSString *string5 = [string4 substringFromIndex:3];
        PRINT(string5)
        
        //  8  根据索引提取最初位置到索引的所有元素(不包含索引字符)
        //substringToIndex
        NSString *string6 = [string4 substringToIndex:3];
        PRINT(string6)
        
        //  9  根据范围提取子串
        //substringWithRange:    NSRange
        NSRange range = {3, 1};
        NSString *string7 = [string4 substringWithRange:range];
        PRINT(string7)
        
        //  10 查询Unicode编码表
        //compare:
        NSString *compare_str1 = @"abc";
        NSString *compare_str2 = @"bcd";
        //定义了一个NSComparisonResult枚举变量
        NSComparisonResult res = [compare_str1 compare:compare_str2];
        NSLog(@"比较:%ld", res);
        
        //  11 判断子付串是否相等
        //isEqualToString:
        
        //  12 判断是否存在某前缀
        //hasPrefix:
        BOOL bo = [string4 hasPrefix:@"OC语言"];
        NSLog(@"%d", bo);
        
        //  13 判断是否存在某后缀
        //hasSuffix:
        BOOL bo2 = [string4 hasSuffix:@"常量串"];
        NSLog(@"%d", bo2);
        
        //  14 判断是否包含某串
        //containsString:
        BOOL bo3 = [string containsString:@"string"];
        NSLog(@"%d", bo3);
        
        //  15 拼接字符串  拼接的结果以新串的形式返回
        //stringByAppendingString:
        NSString *string8 = [string stringByAppendingString:@" !"];
        PRINT(string)
        PRINT(string8)
        
        //  16 将字符串转换为整型数据(待转字符串一般为数字串)
        //intValue
        NSString *string9 = @"999";//字符串内容为100  int a = 100;
        int value = [string9 intValue];
        NSLog(@"%d", value);
        
        //  17 根据分隔符,分割字符串,以数组元素的形式返回。
        //componentsSeparatedByString:
        NSArray *array = [string componentsSeparatedByString:@"a"];
        NSLog(@"***%@***", array);
        
        //  18 把所有的小写字母转换为大写字母
        //uppercaseString
        NSString *string10 = [string uppercaseString];
        PRINT(string10)
        
        //NSMutableString   继承自NSString(所有NSString的方法NSMutableString都能用)
        //@""  不可变字符串
        //@"a OC string"
        NSMutableString *mut_string = [[NSMutableString alloc] initWithString:string];
        PRINT(mut_string);
        
        // 19 根据位置替换成目标串
        //replaceCharactersInRange: withString:
        NSRange range2 = {2, 2};
        [mut_string replaceCharactersInRange:range2 withString:@"C"];
        PRINT(mut_string);
        
        //@"a C string"
        
        // 20 根据索引的位置插入一个目标串
        //insertString: atIndex:
        [mut_string insertString:@"O" atIndex:2];
        PRINT(mut_string)
        
        //@"a OC string"
        // 21 删除特定范围内的字符
        //deleteCharactersInRange:
        NSRange range3 = {1, 3};
        [mut_string deleteCharactersInRange:range3];
        PRINT(mut_string)
        
        //@"a string"
        // 22 拼接字符串
        //appendFormat:  appendString:
        [mut_string appendFormat:@"%@", @" !"];
        PRINT(mut_string)
        
        
        // 23 能够预估空间的初始化方法
        //initWithCapacity:   NSUInteger 大小
    }
    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值