苹果文档的使用+NSString

//1.使用苹果帮助文档
//windoow->documentation
这里写图片描述
//搜多nsstring,找nsstirng class reference
这里写图片描述
里面的信息如下
这里写图片描述

//1.使用苹果帮助文档 两种方式
//windoow->documentation
//搜多nsstring,找nsstirng class reference

//第二种方式按住alt键进入

//c语言是ascii编码,oc是
//字符串是一个对象,和c语言的不一样


#import <Foundation/Foundation.h>

#define kBool(r1) r1?@"YES":@"NO"

int main(int argc, const char * argv[])
{

    @autoreleasepool {



#pragma mark ---------NSString 不可变字符串



        //如何查阅头文件(。h)
        //如何查阅API文档

        //1.使用常量字符串创建,也就是使用字面量创建
        NSString *str = @"hello";

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

        //2.使用格式化字符串创建对象
        NSString *str1 = [NSString stringWithFormat:@"一瓶红牛%.1f元钱",6.5];

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

        NSString *str3 = [NSString stringWithFormat:@"%@  world",str];

        NSLog(@"%@",str3);

        //使用常量字符串

        NSString *str4 = [NSString stringWithString:@"hello lili"];    //ios7之前可以用,现在不让用了;

        //从文件中读取文本,创建字符串对象。txt。其他格式也行

        NSString *str5 = [[NSString alloc]initWithContentsOfFile:@"/Users/lanou3g/Desktop/code/8_3_foundation_基本对象/8_3_foundation_基本对象/haha.txt" encoding:NSUTF8StringEncoding error :nil];
        NSLog(@"%@",str5);

        //使用c语言中的字符串创建
        NSString *str6 = [NSString stringWithCString:"week" encoding:NSUTF8StringEncoding];

        NSLog(@"%@",str6 );

#pragma mark -------字符串长度,范围
        NSString *teststr = [NSString stringWithFormat:@"shanghaitan"];
        //获取字符串长度

        NSUInteger strlength = [teststr length];
        NSLog(@"%lu",strlength);

        //获取一部分字符串,NSRange是一个结构体,里面存储的是正整型的,用%lu打印
        NSRange strRange = [teststr rangeOfString:@"hai"];
        NSLog(@"%lu",strRange.length);
        NSLog(@"%lu",strRange.location);

        NSLog(@"%@", NSStringFromRange(strRange));



#pragma mark -------字符串的比较
        //判定字符串是否包含某个前缀,用%d打印bool类型
        BOOL b = [teststr hasPrefix:@"shang"];
        NSLog(@"%d",b);
        NSLog(@"%@",kBool(b));

        //判断后缀
        BOOL b1 = [teststr hasSuffix:@"上海"];
        NSLog(@"%d",b1);

        NSString *str7 = @"abc";
        NSString *str8 = @"zyx";


        //字符串的比较,  结果是NSInteger,用%ld输出,是长整型
        /*
         结果 -1,0,1      为小于,等于,大于
         */
        NSComparisonResult result = [str8 compare:str7];
        NSLog(@"%ld",result);


        //是否包含某一小段字符串
//        b = [teststr containsString:@"ta"];
        NSRange rang2 = [teststr rangeOfString:@"tan"];
        NSLog(@"%@",NSStringFromRange(rang2));
        if (rang2.length == 0) {
            NSLog(@"不存在");

        }else
        {
            NSLog(@"存在查询的结果");
        }

        //判断两个字符串对象的内容是否相同

       b1 =  [ str7 isEqualToString:str8];

        NSLog(@"%@",kBool(b1));
    }

#pragma mark -------字符串大小写转换
    //转小写

    NSMutableString  *s1 = @"asdfSADFS";
    NSMutableString  *s2 = [s1 lowercaseString];
    NSLog(@"%@",s2);

    //转大写
    NSMutableString  *s3 = [s2 uppercaseString];
    NSLog(@"%@",s3);

#pragma mark ------------字符串截取
    //从指定的位置截取到结尾
    NSMutableString *s4 = [s3 substringFromIndex:0];//包含指定的位置


    NSLog(@"%@",s4);

    s4 = [s3 substringToIndex:3];    //不包含指定的位置
    NSLog(@"%@",s4);

    NSRange range =NSMakeRange(2, 3);
    s4 = [s3 substringWithRange:range];
    NSLog(@"%@",s4);
#pragma mark -----------字符串的拼接

    //NSString 是不可变的,拼接和替换的本质是返回一个新的字符串;
    NSString *str9 = @"北京";
    NSString *str10 = @"蓝欧科技";

    NSString *str11 = [str9 stringByAppendingString:str10];

    NSString *str12 = [str10 stringByAppendingFormat:@"asdfsa%d",5];


#pragma mark --------------替换

    NSString *temp1 = [str11 stringByReplacingOccurrencesOfString:@"北京" withString:@"南京"];
    NSLog(@"%@",temp1);

    NSString *temp2 = [str11 stringByReplacingCharactersInRange:NSMakeRange(0, 1) withString:@"东"];
    NSLog(@"%@",temp2);

#pragma mark ---------------字符串和基本数据类型转换
    // @"123",@"12.5"
    NSString *str6 = @"123";
    //将字符串转化为整形数

    int n = [str6 intValue];

    NSLog(@"n = %d",n);

#pragma mark ----------NSMutableString
    //NSMutablestring是NSString的子类
    /*
     区别
     1.NSString 是NSMutableString的父类
     2.修改NSStirng类型的对象,本质是创建一个新的字符串对象,没有修改原始对象字符串对象
     3.修改NSMutableString类型的对象,修改的是原始字符串对象
     */

    NSString *st2 = @"hello";
    NSLog(@"st2 的地址是%p 内容是%@",st2,st2);
    st2 = [st2 stringByAppendingString:@"World"];
    NSLog(@"st2 的地址是 %p 内容是%@",st2,st2);

    NSMutableString *st1 = [[NSMutableString alloc]init];

    NSLog(@"%ld",st1.length);

    //设置
    [st1 setString:@"xin"];
    NSLog(@"st1 = %@",st1);

    //拼接
    [st1 appendString:@",f you "];
    NSLog(@"st1  = %@",st1);

    [st1 insertString:@"ya" atIndex:0];
    NSLog(@"st1 = %@",st1);

    [st1 replaceCharactersInRange:NSMakeRange(0, 4) withString:@"qiaoyaxin"];
    NSLog(@"st1 = %@",st1);

    [st1 deleteCharactersInRange:NSMakeRange(0, 4)];
    NSLog(@"st1 = %@",st1);
    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值