OC4-foundation NSString NSArray


  目标:1.如何查询API 习惯, 2.foundation 框架,nsstring nsarry nsnumber NSdictionary,

 即时通讯:融云 环信。

  1.API application 应用程序;interface 开放接口 (应用程序编程接口)

    接口就是一系列的操作方法,

 查询API作用: 能够知道都有些那些方法,每个属性的意义,每个方法的作用,这个类的继承关系。

 查询方法:command +鼠标左键,点击类名 只能查看属性和方法:

      (2)alt/option  +鼠标左键,查看类的详细信息,即API

 2.框架:将每个工程里面的重复性,可复用的提取出来,作为以后可以直接拿来用的部分,这个部分就是框架。

   Mvc框架:

   内容:core foundation(核心) ; foundation ;  uikit;(---》)

 

 3。foundation主要包含:对一些c语言中不是很便利的部分,进行了封装,打包成新的类,主要包含:数组/字符串/字典/数值类型/集合/日期。

 4.字符串:(1)不可变字符串:(2)可变字符串

  (1)创建不可变字符串 1) 通过字面创建变量  [NSString *s1=@“ ”]

                    2)通过init来创建: [NSString *s2=[NSString alloc]init];]没有什么意义

                    3)通过便利构造器1: NSString *s3=[NSString stringWithString:s1]; 相当于s1;

                    4)通过便利构造器2   NSString *s4=[NSString stringWithFormat:@"  %@,  %d",s1,4];

                    5)将c的字符串转化为OC的字符串:char *s5="wo shi ni de xiao ya xiao pingguo ";

                               NSString *s6=[NSString stringWithUTF8String:s5];

 5.求字符串长度:[s1 length];

 6.求字符串判断是否以.mp3结尾。(1) [s2 hasPrefix:<#(NSString *)#>]  判断 字符串1 是否与 s2开头的 字符相同;前缀:prefix;

                           (2) [s2 hasSuffix:<#(NSString *)#>]  判断 字符串1 是否与 s2结尾处 的字符相同。后缀:suffix;

 7.字符串的截取: 取目标的一部分字符串,作为新的字符串返回,

   (1)substringToIndex:2--从0开始到2,不包括2;

   (2)substringFromIndex:2 --从2开始到结尾,包括2;

   (3)s1 substringWithRange:NSMakeRange(7, 4) --从7开始之后4个字符,不包括7.

 8.拼接字符串:NSString *temp= [s1  stringByAppendingString: s2];

 9. 替换字符串:替换的新的字符串长度,不必一定和原来的字符串一样长,只是占用原来的地址,[temp stringByReplacingCharactersInRange:NSMakeRange(4, 7) withString:@"belong to me"]

 

 10.比较字符串:int re=[s1 compare:s2]; 

 注意:(1)返回值,只有1.0.-1三种情况,

     (2)和c的比较规则 s1<s2 = -1; s1>s2 是1,

 11.大小写转换,全部首字母大写 [s uppercaseString];

             全部首字母小写 [s lowercaseString];

             单词首字母大写 [ s capitalizedString];

 12.可变字符串:字符串分可变和不可变,可变的字符串 NSMutableString, 是可以随时改变值的,

     而且NSMutableString是对nsstring的继承,拥有所有的方法。

     所有的不可变字符串的初始化后面加上.mutablecopy都可以作为可变字符串的声明初始化。

 拼接:NSMutableString *temp=[ s  stringByAppendingString:@"qwesdk"];
                 [s1 appendString:@"which"]; 没有返回值,没有字符串接收,可变字符是在原字符上直接修改的。
 插入:[s2 insertString: @" you" atIndex:5];//在序号指定的位置,插入一段字符串。
 删除:[ s3 deleteCharactersInRange:NSMakeRange(24, 9)];  //   9 可以用[[s length] - 24 ]替代
 替换:

 13.字符串总结:(1).可变字符串拥有所有不可变字符串的所有方法,(2).不可变字符串将结果通过返回值返回值,可变的直接修改自身,(3)不可变字符串效率更高。

          (4)

 14 数组:oc中 将数组中常用的操作打包整理成了一个类,且存放必须是对象。

   不可变的 NSArray;

 (1)字面量,快速的创建三个元素的数组,(2)*a2=[[NSArray alloc]initWithObjects:@"lubu",@"chitu",@"huaxiong", nil];初始化,nil是终止的标志,2个以上必须要nil 结束。

 (3)求数组元素的个数:     NSLog(@"%lu",[a1 count]);

 (4)求取数组的元素          NSLog(@"%@",[a1 objectAtIndex:1]);

 (5) 求一个元素在数组的位置。   NSLog(@"%lu",[a1 indexOfObject:@"zhaoyun"]);   若元素不存在,不是返回—1,而是返回一个地址的最大值。

 

 可变的,NSmutableArray;

 (1)添加元素:最后一个元素打印

 (2)删除最后一个元素    通过数组元素的内容进行移除--[a1 removeObject:@"delaiesi"];   通过数组元素的下标进行对象移除-- [a1 removeObjectAtIndex:3];

  (3)交换元素位置  [a1 exchangeObjectAtIndex:1 withObjectAtIndex:4];

转载于:https://www.cnblogs.com/ytmaylover/p/5049190.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值