OC学习笔记-Foundation框架(一)

来源:互联网 发布:中国制造业出口数据 编辑:程序博客网 时间:2024/06/10 02:18

------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------


Foundation介绍和使用


框架是由许多类,方法,函数,文档按照一定逻辑组织起来的集合,以便使研发程序编的梗容易在OS X下Mac操作系统中大约有80个框架为所有程序开发奠定基础框架称为Foundation框架

       Foundation框架允许使用一些基本对象,加数字和字符串,以及一些对象集合,如数组,字典和集合,其他功能包括处理日期,内存管理,处理文件系统,存储(或归档)对象,处理集合数据结构(如点和长方形)


如何使用Foundation框架

要想使用Foundation框架中的功能,包含它的主文件即可

#import <Foundation/Foundation.h> 

二.NSString

1一个NSString对象就代表一个字符串(文字内容)

  一般称NSString为字符串类 

2.NSString的创建方式 

1).常量字符串

    NSString *name=@"a,b,c,d";  

2).格式化的方式:字符串存储在堆区

  NSString  *str=[NSString  stringWithFormat:@"jack",@"kim"];


1.NSString字符串比较

字符串的比较函数

字符串根据排列顺序的不同,会有大小的差异,如果我们要比较两个字符串大小的话,可以使用compare方法。


compare方法返回的结果有三种(1)NSOrderedAscending(升序)          前小后大

                                                                         (2)NSOrderedSame                       相等

                                                 (3)NSOrderedDescending(降序) 前大后小

代码演示:


还可以给字符串比较添加一些条件:

如:NSComparisonResult result=[str1 compare:str2 options:NSCaseInsensitiveSearch]


常见的有三个条件:

NSCaseInsensitiveSearch:不区分大小写字符

NSLiteralSearch:进行完全比较区分大小写

NSNumericSearch:字符串比较字符个数,而不是字符值


也可以同时添加多个条件

如:NSComparisonResult result=[str1 compare:str2 options:NSCaseInsensitiveSearch|NSNumericSearch]

(既不区分大小写又比较字符串个数)


NSString前后缀检查及搜索

可以通过字符串的前缀检查字符串

如:



也通过字符串的后缀检查字符串

如:


字符串查找(子字符串在原字符串)


NSRange的使用 


1.NSRange是Foundation框架中比较常用的结构体,

2.定义:typedef struct _NSRange {

                          NSUInteger location;

                          NSUInteger length;

                 } NSRange; 

3.NSRange用来表示事物的一个范围,通常是字符串里的字符范围或者数组里的元素范围 

4.NSRange有2个成员

1).NSUInteger location : 表示该范围的起始位置

2).NSUInteger length : 表示该范围内的长度 

例:@“I love iOS”中的@“iOS”可以用location为7,length为3的范围来表示 

5.NSRange创建方式

1).NSRange range;

    range.location = 7;

    range.length = 3; 

2).NSRange range = {7, 3};

    NSRange range = {.location = 7, .length = 3};

3).使用NSMakeRange函数 ,在字符串location指定的位置开始往后获取length长度的元素

例:NSRange range = NSMakeRange(7, 3); 

4).查看Range的值,可以使用 

例:NSRange range = {5,8}; 

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


字符串的截取和替换

1.截取

1).从指定位置from开始(包括指定位置的字符)到尾部 

- (NSString *)substringFromIndex:(NSUInteger)from;

2).从字符串的开头一直截取到指定的位置to,但不包括该位置的字符 

- (NSString *)substringToIndex:(NSUInteger)to; 

3).按照所给出的NSRange从字符串中截取子串 

- (NSString *)substringWithRange:(NSRange)range; 



替换


NSMutableString介绍和使用

NSMutableString是可变的,里面的文字内容可以随时更改。

NSString是不可变的里面的文字内容是不能进行修改的。


NSMutableString常用的方法:


int main( ){

     NSMutableString  *str=[NSMutableString string];

     [str appendFormat:@"http://baidu.com/%d",100];

    //1)格式化添加字符串

}


//2)删除字符串一部分内容

[str deleteCharaCterslnRange:NSMake Range(3,4)];


//3)给字符串从哪个位置添加一部分

[str inserString:@"p://"atlndex:3];


//4)替换字符串的一部分内容

[str repelaceCharacterslnrange:NsMakeRange(11,5)WithString:@"itcast"];


NSMutableString易犯错误

@“abc”这种方式创建的字符串始终是NSString不是NSSMutablestring所以下面的代码创建的还是NSString,此时使用可辨字符串的函数无法操作字符串。






0 0
原创粉丝点击