电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

工作时总结的iphone面试题,笔试题


发布日期:2019/5/13
 

objectivec中的数字对象都有哪些简述它们与基本数据类型的区别是什么
用NSLog函数输出一个浮点类型结果四捨五入并保留一位小数
截取字符串字符前面及后面的数据分别输出它们
objectivec中的词典对象可变词典对象是哪个初始化一个含有两个键值对的可变词典对象并动态的添加和删除一条记录输出第一条记录
获取项目根路径并在其下创建一个名称为userData的目录
在一个对象的方法里面:selfname = object;和name =object有什么不同吗?
定义属性时什么情况使用copyassign和retain

ViewController 的viewDidLoadviewWillAppearviewDidUnloaddealloc
分别是在什么时候调用在自定义ViewController的时候这几个函数里面应该做什么工作?

简述objectivec内存管理的实现机制并简述什么时候由你负责释放对象什么时候不由你释放
类的定义及声明文件以什么为后缀名?
怎样自动生成属性的获取方法和设置方法
声明一个静态方法和一个实例方法
写一个发送同步http请求并获得返回结果的方法
怎样启动一个新线程子线程怎样刷新主UI
什么是MVC你工作时怎样运用它


NSRange range = [responseString rangeOfString:@|];
int location = rangelocation;
NSString *str = [responseString substringToIndex:location];
NSString *str = [responseString substringFromIndex:location+];

NSDictionary NSMutableDictionary
NSMutableDictionary *dic = [NSMutableDictionary dictionaryWithObjectsAndKeys:@value@key@value@keynil];
[dic setObject:@value forKey:@key];
[dic removeObjectForKey:@key];
[dic objectForKey:@key];

// 获取根路径
NSArray *paths =NSSearchPathForDirectoriesInDomains(NSDocumentDirectoryNSUserDomainMask YES);
NSString *documentsDirectory = [paths objectAtIndex:];
// 创建文件系统管理器
NSFileManager *fileManager = [[NSFileManager alloc] init];
// 判断userData目录是否存在
if(![fileManager fileExistsAtPath:[NSString stringWithFormat:@%@/userData documentsDirectory]]) {
// 不存在创建一个userData目录
[fileManager createDirectoryAtPath:[NSString stringWithFormat:@%@/userData documentsDirectory]withIntermediateDirectories:false attributes:nil error:nil];
}

selfname = &#;object&#;会调用对象的setName()方法
name = &#;object&#;会直接把object赋值给当前对象的name 属性
并且 selfname 这样retainCount会加1而name就不会


assign用于简单数据类型如NSIntegerdoubleboolretain 和copy用户对象copy用于当 a指向一个对象b也想指向同样的对象的时候如果用assigna如果释放再调用b会crash如果用copy 的方式a和b各自有自己的内存就可以解决这个问题retain 会使计数器加一也可以解决assign的问题另外tomic和nonatomic用来决定编译器生成的getter和setter是否为原子操作在多线程环境下原子操作是必要的否则有可能引起错误的结果

上一篇:ios开发如何进行对象序列化和反序列化

下一篇:“按键精灵” 的使用教程之(工具命令生成器 )