2016年iOS笔试题
2024-08-22 22:50:21
收集了一些ios面试的一些基础的试题,其中也有一些较难的
1.请简述UIView与CALayer有什么不同。
2.Block什么情况下会保留实体内引用到外部对象,什么时候要用__block或__weak ?
3.NSDictionary类使用了哪些数据结构和算法?
4.类方法、实例方法与Runtime特性的联系?
5.block调用时,变量的生命周期有哪几种,分别是什么样的?
6.CALayer的多个Sub layer的数据结构,以及重绘顺序?
7.你有多少种方法为UIImage添加一个圆角
8.CoreAnimation是如何开始和结束显示动画?
9.如何把NSArray里NSNumber对象以顺序或反序排序?
10.如何从Core-Data数据库取数据?
11.Core-Data是线程安全吗,如不是,可以怎样做才可以是线程安全?
12.如何实现asynchronous dispatch block?
13.在ARC里,弱引用和强引用有什么区别?
14.view第一次起动时的生命周期是什么呢?重载(reoload)及移除(remove)时生命周期又是什么?
15.UITableView及UICollectionView有什么区别?
16.动态绑定
17.在ARC的情况下,容易造循环引用的情况有哪些?
18.怎么理解MVVM,在cocoa中MVVM如何实现?
19.给定一个单向链表,求出该链表倒数第m个元素(m>0)
struct Item{
int iValue;
Item *pNext;
};
Item setIttem(Iitem *item,int m);
20.非递归实现折半查找数据元素x
int serach(int a[],int x, int low,int high){
int mid;
if(low>high) return -1;
while(low <= high){
mid = (low +high)/2;
if(x == a[mid]) return mid;
else if(a[mid] <x) low = mid +1;
else if (a[mid]>x) high = mid -1;
}
return -1;
}
2.Block什么情况下会保留实体内引用到外部对象,什么时候要用__block或__weak ?
3.NSDictionary类使用了哪些数据结构和算法?
4.类方法、实例方法与Runtime特性的联系?
5.block调用时,变量的生命周期有哪几种,分别是什么样的?
6.CALayer的多个Sub layer的数据结构,以及重绘顺序?
7.你有多少种方法为UIImage添加一个圆角
8.CoreAnimation是如何开始和结束显示动画?
9.如何把NSArray里NSNumber对象以顺序或反序排序?
10.如何从Core-Data数据库取数据?
11.Core-Data是线程安全吗,如不是,可以怎样做才可以是线程安全?
12.如何实现asynchronous dispatch block?
13.在ARC里,弱引用和强引用有什么区别?
14.view第一次起动时的生命周期是什么呢?重载(reoload)及移除(remove)时生命周期又是什么?
15.UITableView及UICollectionView有什么区别?
16.动态绑定
17.在ARC的情况下,容易造循环引用的情况有哪些?
18.怎么理解MVVM,在cocoa中MVVM如何实现?
19.给定一个单向链表,求出该链表倒数第m个元素(m>0)
struct Item{
int iValue;
Item *pNext;
};
Item setIttem(Iitem *item,int m);
20.非递归实现折半查找数据元素x
int serach(int a[],int x, int low,int high){
int mid;
if(low>high) return -1;
while(low <= high){
mid = (low +high)/2;
if(x == a[mid]) return mid;
else if(a[mid] <x) low = mid +1;
else if (a[mid]>x) high = mid -1;
}
return -1;
}
21.MVC优点不正确的是?
A.低耦合性,B.高重用性和可适用性 C、较低的生命周期成本 D、代码高效率
22.下面哪个方法不属于NSObject和内省(Instrospection)方法?
A、inti, B、isKindOfClass C、responseToselector D、isMemberOfClass
23.OC中线程中描述不正确的是?
A.使用NSThread创建、使用GCD的dispatch
B.直接使用NSOperation,然后将其加NSOperatinQueue;
C.在主线程执行代码,方法时performSelectorOnMainThread
D.如果想延时执行代码可以用performSelector:onThread:withObject:wainUtilDone:
24.
iPhone5分辨率320*568,像素640*1136 @2x
iPhone6分辨率375*667,像素375*1334 @2x
iPhone6 Plus分辨率414*736,像素1242*2208 @3x(注意这个分分辨率下渲染后,图像
等比降低pixel分辨率至1080p(1080*1920)
最新文章
- android去掉滑动到顶部和底部的阴影
- github安装&;初探
- Ext.js添加子组件
- (转)HTTP 长连接和短连接
- JQuery_事件基础
- .NET 4.0 中超长路径超长文件名的问题
- c++ http请求
- nodejs随记02
- Codeforces Round #Pi (Div. 2) C. Geometric Progression map
- Activemq 宕机解决方案
- Javascript/Jquery操作数组,增删改查以及动态创建HTML元素
- git添加/删除远程仓库
- Jsp语法九大内置对象和四大作用域
- Android开发导出apk报错:Unable to build: the file dx.jar was not loaded from the SDK folder
- 技巧:Vim 的纵向编辑模式【转】
- ural1855 线段树区间更新+推公式维护一元二次式
- BZOJ1266 [AHOI2006]上学路线route Floyd 最小割 SAP
- 注意:darknet安装
- jmeter随机函数
- Eclipse安装genymotion最新的方法
热门文章
- durex-word
- TinyMCE 官方插件一览表(不完全)
- angular源码分析:$compile服务——指令的编写
- 如何使用CSS绘制一个响应式的矩形
- eclipse — Failed to load the JNI shared library”……\jvm.dll问题原因以及解决方案
- Android M Permission 运行时权限 学习笔记
- .net 配置文件设计工具 Configuration Section Designer
- 手把手教你编译安装MariaDB
- 大数据系列(4)——Hadoop集群VSFTP和SecureCRT安装配置
- Jquery操作cookie,实现简单的记住用户名的操作