关闭

二十三天

70人阅读 评论(0) 收藏 举报

内存管理:copy,拷贝的时候不会对引用计数器作出任何改变,要遵循NSCopying协议,实现NSCopying协议中的方法。因为是拷贝,所以定义的成员属性是等于self->成员属性。

用assign也不会加1;

NSString类型的retainCount为-1  (NSString 存储的内容是变量(不可以被改变));


内存管理ARC:(不用空间就释放掉)

strong-----强引用,强指针--作用:有强指针指向之后,就不会把内存自动释放

weak-------弱引用,弱指针--作用:会释放掉,然后指向空

线程安全管理:

@property(nomatic)不加线程锁(一般使用不加线程锁)性能高

@property(atomic) 加线程锁,性能差


oc框架类库:

Foundation(字符串,容器, NSData)

NSString ---不可变

NSMutableString--可变

        NSString *str1=@"hello";
        NSString *str=[NSString stringWithString:str1];// 赋值其他NSString对象给一个对象
        NSLog(@"%@",str);
        NSString *str2=[[NSString alloc]initWithFormat:@"%s","hello" ];
        //计算长度
        NSLog(@"%lu",[str2 length]);
        //追加字符串
        NSString *str3=[str2 stringByAppendingString:@"oc"];
        NSLog(@"%@",str3);
        //str2里面的值是不会改变的,改变的只是str3的值
        //删除----NSString是只读的,不可修改。所以不可能删除里面的个别的字符
        NSMutableString *mustr=[[NSMutableString alloc]initWithFormat:@"1234"];
        NSLog(@"%@",mustr);
        NSRange range=NSMakeRange(0, 2);//第一个参数是从哪个位置开始,第二个参数是长度,从0开始
        
        [mustr deleteCharactersInRange:range];//删除
        NSLog(@"%@",mustr);
        
        [mustr appendString:@"hello"];// 追加
         NSLog(@"%@",mustr);
        
        [mustr setString:@"5-6-7-8"];// 替换
        NSLog(@"%@",mustr);
        
        //比较
        if ([mustr compare:@"5678"]==NSOrderedSame) {
             NSLog(@"same");
        }else{
            NSLog(@"not same");
        }
        
        //查找 并进行替换
        NSRange range1=[mustr rangeOfString:@"-"];// 查找
        while (range1.length!=0) {
            [mustr replaceCharactersInRange:range1 withString:@"."];//替换
            range1=[mustr rangeOfString:@"-"];

        }
       
        NSLog(@"%@",mustr);
结果:
2015-11-19 14:38:19.674 Foundation框架-- NSString NSMutableString[1347:90606] hello
2015-11-19 14:38:19.674 Foundation框架-- NSString NSMutableString[1347:90606] 5
2015-11-19 14:38:19.675 Foundation框架-- NSString NSMutableString[1347:90606] hellooc
2015-11-19 14:38:19.675 Foundation框架-- NSString NSMutableString[1347:90606] 1234
2015-11-19 14:38:19.675 Foundation框架-- NSString NSMutableString[1347:90606] 34
2015-11-19 14:38:19.675 Foundation框架-- NSString NSMutableString[1347:90606] 34hello
2015-11-19 14:38:19.675 Foundation框架-- NSString NSMutableString[1347:90606] 5-6-7-8
2015-11-19 14:38:19.675 Foundation框架-- NSString NSMutableString[1347:90606] not same
2015-11-19 14:38:19.675 Foundation框架-- NSString NSMutableString[1347:90606] 5.6.7.8
以特殊字符分割字符串然后输出

string是:Application is foundation iphoneis foundation mac

NSArray *array=[string componentsSeparatedByString:@" "];
        for (int i=0; i<array.count; i++) {
            NSLog(@"%@",array[i]);

        }
结果:
2015-11-19 15:45:12.550 Foundation框架-- NSString NSMutableString[1629:107125] Applications
2015-11-19 15:45:12.551 Foundation框架-- NSString NSMutableString[1629:107125] is
2015-11-19 15:45:12.551 Foundation框架-- NSString NSMutableString[1629:107125] foundation
2015-11-19 15:45:12.551 Foundation框架-- NSString NSMutableString[1629:107125] iphone



NSArray---- 用于固定的数据

NSMutableArray------用于不确定的数据

NSMutableArray *array=[[NSMutableArray alloc]init];
        [array addObject:@"aaa"];
        [array addObject:@"bbb"];
        [array addObject:@"ccc"];
        [array addObject:@"hehe"];
        //要想输出汉字就要重写方法: - (NSString *)descriptionWithLocale:(id)locale
        NSLog(@"%@",array);
        [array addObjectsFromArray:array];//把一个数组添加到另一个数组
        //[array removeObject:@"aaa"];//删除数组中的元素
        [array removeObject:@"aaa" inRange:NSMakeRange(3,3)];//删除指定位置的元素,第一个参数是位置,位置从零开始,第二个参数是长度,要查找的长度,就是在第二个参数的长度范围内查找
        NSLog(@"%@",array);
        //查找再删除
        NSUInteger integer=[array indexOfObject:@"bbb" inRange:NSMakeRange(4, 3)];
        [array removeObjectAtIndex:integer];
        NSLog(@"%@",array);


NSNumber -----使用NSNumber对象来创建和初始化不同类型的数字对象


学生管理系统:学生信息(保存,查询,删除,添加,修改),学生成绩(能查询,修改,显示)





0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2821次
    • 积分:269
    • 等级:
    • 排名:千里之外
    • 原创:25篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章存档