iOS笔记

单例是一种设计模式——— 单例方法是+方法 ——— 通常以default或者share开头
一个类只创建一个对象,并且不释放,这个对象就叫做单例
作用: 共享数据,控制,降低性能的消耗
单例的应用场景:
1.废纸篓
2.网页计数器
3.音乐播放器
4.任务管理器

协议
//专门用来规定方法的
//作用:统一接口
//对比:
//继承统一接口: 子类继承父类,所以所有的子类接口都被统一化,范畴比较小,子类可以不用重写方法,子类还可以添加属性和方法.
//协议统一接口: 类与类之间没有联系,范畴比较大,因为是id类型,每一个类都需要自己实现方法,不能定义属性

NSRunLoop的主要作用:控制NSRunloop里面线程的执行和休眠,在有事情做的时候使当前NSRunLoop控制的线程工作,没有事情做让当前NSRunLoop的控制的线程休眠。

stringByAppendingPathComponent是添加/号,使之变成一个完整的路径
NSString * str=@“tmp”;
str=[ str stringByAppendingPathComponent:@”hello.png”];
str就变成 tmp/hello.png了
如果是stringByAppendingPathExtension 是加后缀的意思
str=[str stringByAppendingPathExtension:@”jpg”];
str就是 str.jpg

序列化与反序列化存储文件与读取文件例子
-(void)encodeWithCoder:(NSCoder *)aCoder{
[aCoder encodeObject:self.name forKey:@”name”];
[aCoder encodeObject:self.address forKey:@”adress”];
[aCoder encodeObject:self.number forKey:@”number”];
[aCoder encodeObject:self.company forKey:@”company”];
}
-(id)initWithCoder:(NSCoder *)aDecoder{
if (self = [super init]) {
self.name = [aDecoder decodeObjectForKey:@”name”];
self.address = [aDecoder decodeObjectForKey:@”adress”];
self.number = [aDecoder decodeObjectForKey:@”number”];
self.company = [aDecoder decodeObjectForKey:@”company”];
}
return self;

+(NSMutableArray *)loadPersonInfo{
return [NSKeyedUnarchiver unarchiveObjectWithFile:file];
}
+(void)savePersonInfo:(NSArray *)array{
[NSKeyedArchiver archiveRootObject:array toFile:file];
}

c字符串转oc字符串:
return [[NSString alloc]initWithFormat:@”%s”,ch];
return [[NSString alloc]initWithCString:ch encoding:NSUTF8StringEncoding];

获取文件内容,例如歌词文件内容:
NSString *lrcContent = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];

获取字符串指定位置字符:
- (unichar)characterAtIndex:(NSUInteger)index;
例如:获取字符串str第1号位元素:
unichar c = [str characterAtIndex:1]

获取原文件的属性:
NSDictionary *atr = [manager attributesOfItemAtPath:oldPath error:nil];

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值