【黑马程序员】Foundation框架(一)

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

一、Foundation框架介绍


    1、什么是Foundation框架

       Foundation框架是由许多类、方法、函数、文档按照一定的逻辑组织起来的集合,以便使研发变得更容易在OS X下的Mac操作系统中大约80框架为所有程序开发奠定基础的框架称为Foundation框架。
       Foundation框架允许使用一些基础基础对象,如数字和字符串,以及一些对相机和,如数组、字典和集合,其他功能包括日期和时间,内存管理、处理文件系统、存档对象、处理几何数据结构。
       Foundation框架有125个可用头文件,可用通过简单的导入一个头文件来包含框架中所有的头文件,为
#import <Foundation/Foundation.h>

    2、Foundation框架的作用

      Foundation框架是Mac\iOS中其他框架的基础。它包含了开发中常用的数据类型,如:结构体、枚举、类等



二、NSString类


    1、什么是NSString

       一个NSString对象就代表一个字符串,一般称NSString为字符串类。

    2、NSString的创建和初始化

       1)创建并直接初始化(常量字符串)
NSString *str = @"hello world";

       2)创建并格式化赋值
       stringWithFormat方法  NSString类方法  参数:字符串类型数据或格式控制符  返回类型:NSString类型  
NSString *str2 = [NSString stringWithFormat:@"%@",@"hello world"];
NSString *str3 = [[NSString alloc]stringWithFormat:@"%@",@"hello my friends"];
       字符串存放在堆区

    3、文件读写

       字符串写入文件   writeToFile:atomically:encoding:error方法  NSString对象方法  参数:文件地址+是否原子性+字符标准+错误返回    返回类型:BOOL类型
NSString *str = [NSString stringWithFormat:@"%@",@"ddsa"];
[str writeToFile:@"/Users/jiangda/Desktop/oc.txt" atomically:NO encoding:NSUTF8StringEncoding error:nil];
       字符串读取文件   stringWithContentsOfFile:encoding:error方法   NSString类方法  参数:文件地址+字符标准+错误返回  返回NSString类型
NSString *str1 = [NSString stringWithContentsOfFile:@"/Users/jiangda/Desktop/oc.txt" encoding:NSUTF8StringEncoding error:nil];

    4、NSSting其他常用方法

      1)比较字符串大小  compare方法  NSString对象方法  参数:字符串     返回类型:NSComparisonResult类型(BOOL类型的别名)
NSString *str = @"aaa";
NSString *str1 = @"bbb";
NSComparisonResult result = [str compare:str1];
NSLog(@"%ld",result);
            NSComparisonResult类型为enum类型别名: NSOrderedDescending    1    str>str1
                                                                                     NSOrderedAscending    -1    str<str1
                                                                                     NSOrderedSame      0     str = str1
           此方法变形 compare:options方法   增加选项参数:NSCaseInsensitiveSearch:字符不区分大小写      NSLiteralSearch:进行完全比较,区分大小写(默认)
                                                                                            NSNumericSearch:比较字符串的字符个数,非字符值
NSString *str = @"aaa";
NSString *str1 = @"b";
NSComparisonResult result = [str compare:str1 options:NSNumericSearch];


      2)前后缀查询搜索
            检查字符串是否以另一个字符串开头:hasPrefix方法     NSString对象方法    参数:要查询的开头字符串    返回:BOOL类型
            检查字符串是否以另一个字符串结束:hasSuffix方法     NSString对象方法    参数:要查询的结尾字符串    返回:BOOL类型
            检查字符串是否包含所查询字符串:rangOfString方法   NSString对象方法    参数:要查询的字符串      返回:NSRange类型 (如包含返回位置和长度,否则返回巨大的数值)
NSString *str = @"http://www.baidu.com";
BOOL b1 = [str hasPrefix:@"http://"];
BOOL b2 = [str hasSuffix:@".com"];
NSRange ran = [str rangeOfString:@"baidu"];

      3)字符串截取
            从参数位置开始截取值字符串尾部:substringFromIndex方法   NSString对象方法   参数:NSUInteger开始截取位置(包括此指定位置的字符)
            从字符串开头截取讨指定位置:substringToIndex方法    NSString对象方法   参数:NSUInteger结束位置(不包括此指定位置的字符)
            按照指定范围(NSRange)截取字符串:substringWithRange方法   NSString对象方法   参数:NSRange范围与长度

      4)字符串替换
            stringByReplacingOccurrencesOfString方法    NSString对象方法   参数:字符串中原字符串+字符串中替换字符串     返回:NSString类型(可将“ ”替换成“”消除空格)

      5)获取字符串中字符
            获取字符串长度:length方法    NSString对象方法   无参    返回:字符串长度NSUInteger类型
            获取字符串中整形:intValue方法   NSString对象方法   无参     返回:int类型
            获取字符串中浮点型:floatValue方法   NSString对象方法   无参     返回:float类型
            获取字符串中双浮点行:doubleValue方法   NSString对象方法   无参    返回:double类型
            将C语言字符串转换成OC语言字符串:stringWithUTF8String方法    NSString类方法    参数:C语言字符串   返回:NSSting类型
            将OC语言字符串转换成C语言字符串:UTF8String方法    无参     NSString对象方法     返回:char *类型
NSString *str = @"124";
NSString *str2 = @"12.33";
NSString *str3 = @"das";
NSUInteger inte = [str length];
int i = [str intValue];
float f = [str2 floatValue];
double d = [str2 doubleValue];
char *c = "dggeds";
NSString *str4 = [NSString stringWithUTF8String:c];
const char *c1 = [str3 UTF8String];



三、NSMutableString的介绍


   一、基本概念

            NSMutableString类继承NSString类,NSString提供的方法NSMutableString中基本都可以使用。它是一个不固定的字符串,是可变的,可以任意的添加、删除、在指定位置插入字符串,而NSString里面的字符串是不可变的。
            不可变:字符串在内存中占用的存储空间固定,并且存储的内容不能改变。
            可变:字符串在内存中占用的存储空间不固定,存储的内容也可以改变。

   二、常用方法

            创建一个空的字符串:string方法     NSMutableString类方法    无参      返回:Id类型
            添加一个字符串:appendString方法    NSMutableString对象方法    参数:NSString字符串    返回:void类型  
            添加一个格式化字符串:appendFormat方法   NSMutableString对象方法    参数:字符串类型数据或格式控制符     返回:void类型
            删除指定位置的字符串:deleteCharactersInRange方法   NSMutableString对象方法    参数:范围与长度NSRange    返回:void类型     
            将指定字符串插入自定位置:insertString:atIndex方法   NSMutableString对象方法    参数:指定字符串NSString+位置NSUInteger    返回:void类型
            将指定字符串替换指定范围内字符串:replaceCharactersInRange:withString方法    NSMutableString对象方法    参数:NSRange范围+NSString字符串  返回:void类型
NSMutableString *mu2 = [NSMutableString string];
[mu2 appendString:@"abcdefgh"];
int i = 4;
[mu2 appendFormat:@"%d",i];
NSRange ran = {2,1};
[mu2 deleteCharactersInRange:ran];
[mu2 insertString:@"zyx" atIndex:4];
[mu2 replaceCharactersInRange:ran withString:@"oput"];


        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值