葵花宝典1.0

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

葵花宝典欲练此功,必先自宫

若不自宫,也能成功

前言:

本秘籍只针对现场面试的学员,本教没有搜集到视频面试的资料,所以不做评论,姑且认为与现场面试大同小异。

强烈建议学员尽早提交入学测试(可百度可群里讨教),切不可慢慢悠悠看完视频再做,以免耽误时机,后期面试全被约满。提交测试后应预约较晚的时间面试,如10号是本批次录取,那学员可预约9号10号面试,给自己留下充足准备时间。

话不多说,少年,发功!

黑马面试分为3部分:(按顺序)

1》笔试:手写3道编程题。(据说视频只写一道)2》自我介绍。

3》口答。

先说口答:

根据官方提供的口答知识点如下:

C语言:变量,函数,选择结构,循环结构,指针,结构体,枚举,宏定义

OC语言:面向对象,类与对象,方法,封装,继承,多态,self,super

设计模式:代理

特有语法:协议,分类,代码块(@protocol, Gategory, Block)

Foundation框架:NSString,NSArray,NSDictionary

根据众教徒的反馈,面试官实际问到的问题为:介绍Foundation框架的结构体,手动管理内存,分类,协议,C预处理指令,Block,autorelease 和release的区别,@property,单例设计模式,枚举,宏定义,self与super,代理,strong与weak,NSString的各种…

如有不全之处,绝对正常。

再说自我介绍:

如果你有故事,可以讲给面试官听,但是前提是,必须先把自己的基本情况讲清楚。讲的时候一定要看面试官脸色,如果发现她表情冷漠,应及时转移话题。可以说实话,但要有选择的说,每个面试官都希望招到性格开朗,学习认真刻苦,家

境殷实并全力支持你,你也超级热爱黑马热爱IOS的学员。这里不多累赘,大家自己发挥。

接下来是最重要的笔试部分:

以下是本教整理的笔试真题,多写,你的笔试题最少有一道就在这里面。具体答案这里只提供一部分,其余请百度或者群内交流。

1》创建一个NSDictionary,并创建可变副本和不可变副本,说下是深复制还是浅复制。2》有序数组,插入一个数后还保证有序。(OC)3》NSString和NSDictionary的遍历,知道几种写几种。

4》NSArray的遍历,知道几种写几种。

5》利用分类实现以下两个功能:(1)字符串的反转。(2)计算字符串中英文字母的个数6》求几个字符串的最大公共子字符串(oc)

7》输入6个字符串,按首字符的大小,对6个字符串排序。

8》编写一个函数,找出整数数组的最小值。

9》编写一个程序,用于接收从终端输入的整数,提取并用英文显示这个数的每一位数,例如

输入112,输出One One Two

10》求两个字符串的公共字母,添加到第三个字符串中。

11》给一个英文句子,把每个单词的首字母转成大写。

12》给一个英文句子,罗列出句子中出现的字母和其出现的次数,不区分大小写。

4》NSArray遍历的四种方法

第一种,for循环

void arrayFor()

{

//快速创建一个oc数组

NSArray *array = @[@”one”,@”two”]; //遍历数组

for(int i=0; i

{

NSLog(@”array[%i]=%@”,i ,array[i]); }

}

第二种,快速遍历for(if obj in array) void arrayFor()

NSArray *array = @[@”one”,@”two”];

for(id obj in array)

{

NSLog(@”%@”,obj);

}

}

第三种调用block,原理:每遍历一个元素,就会调用一次block,并且把这个元素和下标当做block的参数传给id obj和idx

void arrayFor()

{

NSArray *array = @[@”one”,@”two”]; [array enumerateObjectsUsingBlock:^(id obj, NSInteger idx, BOOL *stop)

{NSLog(@”array[%zi]=%@”,idx,obj);

if(idx==1)

{*stop=YES;}

}];

第四种通过迭代器遍历数组

void arrayFor()

{

NSArray *array = @[@”one”,@”two”];

//获取数组的迭代器

NSEnumerator *enumerator = [array objectEnumerator];

id obj = nil;

//获取下一个数组元素,当下一个元素不为空的时候,继续遍历直到下个元素为空

while((obj =[enumerator nextObject])!=nil)

{

NSLog(@”%@”,obj);

3>NSDictionary的遍历

第一种for循环快速遍历

void dictFor()

{

NSDictionary*dict=@{@”k1”:@”v1”,@”k2”:@”v 2”};

//遍历字典的所有key

for(id key in dict)

{

id value=[dict objectForKey:key];

NSLog(@”%@=%@”,key,value);

}

第二种使用迭代器遍历

void dictFor()

相关文档
最新文档