首页 > 其他 > 详细

黑马程序员-------Foundation框架

时间:2015-11-18 00:40:26      阅读:252      评论:0      收藏:0      [点我收藏+]

1.框架是由许多类、方法、函数、文档按照一定的逻辑组织起来的集合,以便使研发程序变的更容易

清除缓存,删除这个文件夹下的所有文件/Users/fanyafang/Library/Developer/Xcode/DerivedData

显示隐藏文件:defaults write com.apple.finder AppleShowAllFiles -bool true

隐藏隐藏文件:defaults write com.apple.finder AppleShowAllFiles -bool false

2.NSURL与NSString

url统一资源定位符

        //1.将字符串写入文件
        NSString *str11=@"ssad";
        NSError *err;
        [str11 writeToFile:@"/Users/fanyafang/Desktop/str.txt" atomically:YES encoding:NSUTF8StringEncoding error:&err];
        if(err!=nil){
            NSLog(@"写入失败!%@",err);
        }else{
            NSLog(@"写入成功!");
        }
        //2.读取文件到字符串
        NSString *str22=[NSString stringWithContentsOfFile:@"/Users/fanyafang/Desktop/str.txt" encoding:NSUTF8StringEncoding error:&err];
        if(err!=nil){
            NSLog(@"读取失败!%@",err);
        }else{
            NSLog(@"读取成功!");
            NSLog(@"%@",str22);
        }
        //3.写入url,本地路径加file://
        NSURL *url=[NSURL URLWithString:@"file:///Users/fanyafang/Desktop/str1.txt"];
        if([str11 writeToURL:url atomically:YES encoding:NSUTF8StringEncoding error:&err]){
            NSLog(@"写入成功url");
        }
        //4.读取url
        NSString *str33=[NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
        NSLog(@"%@",str33);

3.NSString

compare:字符串比较

[str1 compare:str2 options:(NSCaseInsensitiveSearch,NSNumericSearch)];

     NSString *str1=@"abcd";
        NSString *str2=@"abc";
        NSComparisonResult s=[str1 compare:str2 options:(NSCaseInsensitiveSearch,NSNumericSearch)];
        
        switch (s) {
            case NSOrderedAscending:
                NSLog(@"升序!");
                break;
            case NSOrderedSame:
                NSLog(@"一样!");
                break;
            case NSOrderedDescending:
                NSLog(@"降序!");
                break;
            default:
                break;
        }

isEqualToString:字符串比较

    if ([str1 isEqualToString:str2]) {
            NSLog(@"相等");
        }else{
            NSLog(@"不相等");

        }

hasPrefix:是否包含前缀

hasSuffix:是否包含后缀

 [str1 hasPrefix:@"sss"];//返回BOOL
 [str1 hasSuffix:@".jpg"];//返回BOOL

rangeOfString:字符串1中是否包含字符串2,返回结构体类型

NSMarkRange()可以给NSRange类型的结构体变量赋值

NSStringFromRange()把range转换正NSString

        NSRange range=[str1 rangeOfString:str2];
        if(range.location!=NSNotFound){
            //没有找到
        }else{
            //找到了
            //range.location首次出现的位置
            //range.length长度
        }

substringFromIndex:从什么位置开始截取字符串

substringToIndex:从开始位置到什么位置截取

substringWithRange:截取一个范围

        NSString *str3=@"ssadsadsadsaqqee";
        NSLog(@"%@",[str3 substringFromIndex:3]);//从什么位置开始到结束
        NSLog(@"%@",[str3 substringToIndex:3]);//从开始到什么位置结束
        
        NSRange r1={3,4};
        NSLog(@"%@",[str3 substringWithRange:r1]);//截取一个范围
        

stringByReplacingOccurrencesOfString:替换

NSString * str4=[str3 stringByReplacingOccurrencesOfString:@"a" withString:@"#"];
NSLog(@"%@",str4);

length获取字符串的长度

characterAtIndex获取某个位置的字符

        NSUInteger u=str3.length;
        NSLog(@"%u",u);
        
        unichar ch= [str3 characterAtIndex:3];
        NSLog(@"%c",ch);    

intValue:字符串转int

floatValue:字符串转float

doubleValue:字符串转double

        NSString *str5=@"3";
        NSLog(@"%d",[str5 intValue]);
        NSLog(@"%f",[str5 floatValue]);
        NSLog(@"%f",[str5 doubleValue]);

stringWithUTF8String用C的字符串创建OC的字符串

UTF8String:OC字符串转成C的字符串

       char *str6="aasdaf";
        //用C语言的对象创建OC的字符串
        NSString *str7= [NSString stringWithUTF8String:str6];
        
        char *str8=[str7 UTF8String];
        printf("%s",str8);    

2.NSMutableString

        NSMutableString *strring=[NSMutableString stringWithFormat:@"Jack"];
        
        //NSMutableString *strring=[NSMutableString string];
        
        [strring appendFormat:@"itcast"];//追加
        
        NSLog(@"%@",strring);    

NSMutableString和NSString的区别:

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

2)NSMutanleString是可变的,里面的文字内容可以随便更改

3)NSMubleString继承自NSStirng,能使用NSString的所有方法

NSMutableString常用方法

stringWithFormat:格式化添加字符串

deleteCharactersInRange:删除字符串的一部分

insertString:在指定位置插入字符串

replaceCharactersInRange:替换字符串的一部分

给可变字符串赋值为不可变字符串,报错

        NSMutableString *strring=[NSMutableString stringWithFormat:@"Jack"];
        
        //NSMutableString *strring=[NSMutableString string];
        
        [strring appendFormat:@"itcast"];
        [strring appendString:@"ssss"];
        NSLog(@"%@",strring);
        NSRange range1={2,3};
        [strring deleteCharactersInRange:range1];
        [strring insertString:@"fanyf" atIndex:8];
        
        NSLog(@"%@",strring);
        [strring replaceCharactersInRange:range1 withString:@"rrr"];
        NSLog(@"%@",strring);    

位枚举,枚举值是2的次方,不使用的时候赋0

 3.NSArray只能存放任意OC对象,不能存nil,改成[NSNull null]

        //创建一个空数组
        NSArray *arr=[NSArray array];
        NSLog(@"%@",arr);
        //创建数组,只有一个元素
        NSArray *arr2=[NSArray arrayWithObject:@"acc"];
        NSLog(@"%@",arr2);
        //创建数组,有多个元素
        NSArray *arr3=[NSArray arrayWithObjects:@"one",@"two",@"three",nil];
        NSLog(@"%@",arr3);
        //调用对象方法,创建数组
        NSArray *arr4=[[NSArray alloc] initWithObjects:@"one",@"two",@"three",nil];
        NSLog(@"%@",arr4);
        //用一个数组可以创建另外的一个数组
        NSArray *arr5=[NSArray arrayWithArray:arr3];
        NSLog(@"%@",arr5); 

count获取数组长度

ObjectAtIndex:获取某个位置的元素

indexofObject:返回某个元素的下标

laseObject:

firstObject:

containObject:是否包含这个元素返回BOOL

用简化的方式定义数组

NSArray *arr=@[@"1",@"2",@"one"];

访问元素用:arr[2];

数组的遍历(一般方法和快速枚举法):
for(NSString *str in arr){

NSLog(@"%a",str);

}

使用block的方式访问

        [arr5 enumerateObjectsUsingBlock:^(id  obj, NSUInteger idx, BOOL *stop) {
            if(idx==2){
                *stop=YES;
            }else{
                NSLog(@"idx=%ld,obj=%@",idx,obj);
            }
            
        }];

读写文件,xml格式或者plist格式技术分享

数组中的字符串用"-"连接起来

字符串分割成一个数组

技术分享

4.NSMutableArray

5.NSDictionary

技术分享技术分享技术分享

简写形式:

技术分享

6.NSMutableDictionary

技术分享

 

黑马程序员-------Foundation框架

原文:http://www.cnblogs.com/fanglove/p/4946336.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!