1、init
2、initWithBytes:length:encoding:
3、initWithCharacters:length:
4、initWithCString:encoding:
5、initWithUTF8String:
6、initWithFormat:
7、stringWithFormat:
8、stringWithCharacters:length:
9、stringWithString:
10、stringWithCString:encoding:
11、stringWithUTF8String:
12、length
13、lengthOfBytesUsingEncoding:
14、characterAtIndex:
15、getCharacters:range:
16、cStringUsingEncoding:
17、UTF8String
18、stringByAppendingFormat:
19、stringByAppendingString:

20、stringByPaddingToLength:withString:startingAtIndex:

21、componentsSeparatedByString:

22、componentsSeparatedByCharactersInSet:
23、substringFromIndex:
24、substringWithRange:
25、substringToIndex:
26、rangeOfString:
27、rangeOfString:options:
28、rangeOfString:options:range:

29、stringByReplacingOccurrencesOfString:withString:

30、stringByReplacingOccurrencesOfString:withString:options:range:

31、stringByReplacingCharactersInRange:withString:
32、caseInsensitiveCompare:
33、compare:
34、compare:options:

35、compare:options:range:

36、hasPrefix:

37、hasSuffix:

38、isEqualToString:

39、capitalizedString

40、lowercaseString

41、uppercaseString

42、doubleValue

43、floatValue

44、intValue

45、integerValue

46、longLongValue

47、boolValue

48、stringWithCapacity:
49、initWithCapacity:
50、appendFormat:
51、appendString:
52、deleteCharactersInRange:
53、insertString:atIndex:

54、replaceCharactersInRange:withString:

55、replaceOccurrencesOfString:withString:options:range:

56、setString:

1、array

2、arrayWithArray:

3、arrayWithObject:

4、arrayWithObjects:

5、arrayWithObjects:count:

6、init
7、initWithArray:

8、initWithObjects:

9、initWithObjects:count:

10、containsObject:

11、count

12、getObjects:range:

13、firstObject

14、lastObject

15、objectAtIndex:

16、objectsAtIndexes:

17、objectEnumerator

18、reverseObjectEnumerator

19、indexOfObject:

20、indexOfObject:inRange:

21、makeObjectsPerformSelector:

22、makeObjectsPerformSelector:withObject:
23、firstObjectCommonWithArray:
24、isEqualToArray:
25、arrayByAddingObject:
26、arrayByAddingObjectsFromArray:
27、sortedArrayUsingFunction:context:
28、sortedArrayUsingDescriptors:
29、sortedArrayUsingSelector:
30、componentsJoinedByString:

31、arrayWithCapacity:
32、initWithCapacity:
33、addObject:
34、addObjectsFromArray:
35、insertObject:atIndex:
36、removeAllObjects
37、removeLastObject
38、removeObject:
39、removeObject:inRange:
40、removeObjectAtIndex:
41、removeObjectsInArray:
42、removeObjectsInRange:
43、replaceObjectAtIndex:withObject:
44、setArray:
45、exchangeObjectAtIndex:withObjectAtIndex:
46、sortUsingDescriptors:
47、sortUsingFunction:context:
48、sortUsingSelector:

三、10.18
上机作业:

⼀一、集合包含:NSArray、NSDictionary、NSSet。
定义三个新类,分别名为Song、PlayList和MusicCollection。Song对象包含着关于特

定歌曲的信息,⽐比如歌曲名、艺术家、专辑、歌曲⻓长度等;PlayList对象包含播放列表名称
和⼀一个歌曲的集合;MusicCollection对象包含所有播放列表集合,它包括⼀一个名为Library
的主播放列表,这个列表包含该集合中的所有歌曲。定义上述的三个类,并编写⽅方法实现下
列⼈人物:

1、创建⼀一个Song对象,并设置其信息;

2、创建⼀一个PlayList对象,并对播放列表添加和删除歌曲。如果⼀一⾸首新歌不在主列表
中,那么将其添加进去。确保从主播放列表中删除⼀一⾸首歌时,也要从⾳音乐集合中的其他播放
列表中删除此歌曲;

3、创建⼀一个MusicCollection对象,并对该集合添加和删除播放列表。
4、搜索并显⽰示关于所有歌曲、播放列表或整个⾳音乐集合的信息。
5、确保所有你定义的类都不产⽣生内存泄露。

⼆二、模拟⼀一个动物园系统MyZoo

1、动物园⾥里⾯面有三种动物:Panda,Elephant,Kangaroo

2、三种动物都有⼀一定的数量(不⽌止⼀一只)

3、动物有各⾃自不同的⾷食量(以天为单位的⾷食量),并且每天都在消耗⾷食物。

4、动物园⾥里的⾷食物有固定的储备,⽽而且假设三种动物都吃这⼀一种⾷食物。

5、每个动物都有不同的⽣生产周期,每当到了这种动物的⽣生产周期,动物园就会出现⼀一位新
⽣生宝宝(假设其⾷食量和成年动物是⼀一样的)。

6、在主循环⾥里模拟动物园的运转情况,要求在控制台上输出如下内容:第⼏几天、动物的数
量、动物园饲料的余量,直到饲料不够吃为⽌止。

7、动物的数量,⾷食量,⽣生产周期,饲料总量都应该是可以配置的(在同⼀一个⽂文件中统⼀一配
置)

三、在⼀一个遥远的国度,有个国⺩王叫⼭山鲁亚尔,他有⼀一些⾂臣民,他们的职业分别是农民,⼯工
⼈人和演员。农民的职责是种地,⼯工⼈人的职责是修理,演员的职责是演出。
  ⾂臣民们不⽤用为了⽣生计发愁,因为国⺩王会每个星期给他们发⼯工资,只是⼯工资⽔水平不同⽽而
已。
  国⺩王每天的职责就是督促⼦子民们干活。
  由于⼯工资⽔水平⽐比较⾼高,国⺩王的积蓄有限,所以很不幸,这个可怜的国⺩王再第四周就破产
了。

要求输出内容:

1、当前是第⼏几周的星期⼏几。 2、每⼀一天每个⼦子民的⼯工作情况:包括名字、职业和⼯工作内容。 3、每周每个⼦子民的收⼊入情况,以及他们的财富总额。 4、每周国⺩王的⽀支出总额,以及他的财富余额。 5、最后宣布国⺩王破产。

注:每个⼦子民的初始值财富都是0。⼈人为调节国⺩王的财富和⼦子民的⼯工资,使得国⺩王在第 四周破产。

1、dictionary 2、dictionaryWithDictionary: 3、dictionaryWithObject:forKey:

4、dictionaryWithObjects:forKeys: 5、dictionaryWithObjectsAndKeys:

6、initWithDictionary: 7、initWithObjects:forKeys: 8、initWithObjectsAndKeys:
9、count
10、isEqualToDictionary:
11、allKeys
12、allKeysForObject:
13、allValues
14、objectForKey:
15、valueForKey:
16、keyEnumerator
17、objectEnumerator
18、keysSortedByValueUsingSelector:
19、dictionaryWithCapacity:
20、initWithCapacity:

21、init
22、setObject:forKey:
23、setValue:forKey:
24、setDictionary:
25、removeObjectForKey:
26、removeAllObjects
27、removeObjectsForKeys:

1、set
2、setWithArray:
3、setWithObject:
4、setWithObjects:
5、setWithSet:
6、setByAddingObject:
7、setByAddingObjectsFromSet:
8、setByAddingObjectsFromArray:
9、count
10、allObjects
11、anyObject
12、containsObject:
13、member:
14、objectEnumerator
15、isSubsetOfSet:
16、intersectsSet:
17、isEqualToSet:

18、addObject:
19、removeObject:
20、removeAllObjects
21、addObjectsFromArray:
22、unionSet:
23、minusSet:
24、intersectSet:
25、setSet:

26、countForObject:

程序员是怎么炼成的---OC题集--练习答案与题目(3)的更多相关文章

  1. 程序员是怎么炼成的---OC题集--练习答案与题目(2)

    1.objective-c中有垃圾回收机制吗?  没有像java.C#一样的垃圾回收机制,但是有ARC自动引用计数器技术,根据对象的引用技术来判断对象是否还在使用,如果RC=0,则系统就会销毁对象,实 ...

  2. 程序员是怎么炼成的---OC题集--练习答案与题目(1)

    一. 1. 定义3个类,全部代码.效果:能默写,关键词全部正确. 2. ⾯面向对象和⾯面向过程有什么区别? 答:面向对象以事物(对象)为核⼼,完成事件只是一个任务.面向过程以事件为核心,为了完成任务, ...

  3. Android程序员提加薪被拒,刷2000题跳槽涨薪50%!

    为什么想跳槽? 简单说一下当时的状况,我在这家公司做了两年多,这两年多完成了一个大项目,作为开发的核心主力,开发压力很大,特别是项目上线前的几个月是非常辛苦,几乎每晚都要加班到12点以后,周末最多只有 ...

  4. 打杂程序员之ftp换成外网ip咋就登陆不上?

    主动模式ftp N连接到ftp的21端口.然后客户端开端口监听,并通过N+1端口发送命令给FTP服务器.服务器反过来连接用户本地端口. 被动模式解决从服务器到客户端数据端口的入口反向连接被防火墙过滤掉 ...

  5. .net程序员面试小结(内附一些面试题和答案)

    今天下午去面试,面试官和HR小姐姐都很好,没有做面试题,用聊天的方式来交流技术,整个过程很轻松,从中也学到了很多知识. 下面就来总结一下面试过程. 一.深刻了解自己的简历 无论是HR还是技术面试人,首 ...

  6. Android程序员学WEB前端(5)-HTML(5)-框架集-Sublime

    转载请注明出处:http://blog.csdn.net/iwanghang/article/details/76576279 觉得博文有用,请点赞,请评论,请关注,谢谢!~ 框架集: index7. ...

  7. JAVA程序员面试宝典

    程序员面试之葵花宝典 面向对象的特征有哪些方面    1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面.抽象并不5. 打算了解全部问题 ...

  8. Java程序员面试之葵花宝典

    程序员面试之葵花宝典 1.面向对象的特征有哪些方面   抽象:抽象就是忽略一个主题中与当前目标 无关的那些方面, 以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而 只是选择其中的一部 ...

  9. SOHO 程序员

    SOHO 程序员:从事程序开发.维护的家居办公人员. 一.自由程序员 SOHO程序员代表一种自由.弹性而新型的工作方式.SOHO,代表一种新经济.新概念. 是一些热爱软件开发的一族. SOHO程序员 ...

随机推荐

  1. CRM创建物料FM2

    这是在佛山好帮手时受启发而研究出来的,创建物料,带单位,类型组 经测试....算了,不说了,有什么限制自己测去...今天心情不好... FUNCTION ZLY_CREATE_PRODUCT_UNIT ...

  2. 查看Linux软件信息

    查看系统发型版本 1. 对于linux系统而已,有成百上千个发行版.对于发行版的版本号查看方法 如以centos为例.输入lsb_release -a即可 该命令适用于所有的linux,包括Redha ...

  3. 开源软件架构总结之——Bash(readline做输入交互式,词法语法分析,进程交互)

    第3章 The Bourne-Again Shell Bash的主要组件:输入处理,解析,单词展开(word expansion)和其他命令处理,管道(pipeline)中的命令执行.这些组件构成一个 ...

  4. hadoop版本比较 [转]

    由于Hadoop版本混乱多变,因此,Hadoop的版本选择问题一直令很多初级用户苦恼.本文总结了Apache Hadoop和Cloudera Hadoop的版本衍化过程,并给出了选择Hadoop版本的 ...

  5. 在 Linux 中怎样将 MySQL 迁移到 MariaDB 上

    自从甲骨文收购 MySQL 后,由于甲骨文对 MySQL 的开发和维护更多倾向于闭门的立场,很多 MySQL 的开发者和用户放弃了 MySQL.在社区驱动下,促使更多人移到 MySQL 的另一个叫 M ...

  6. 10款优秀Vim插件帮你打造完美IDE

    导读 如果你稍微写过一点代码,就能知道“集成开发环境”(IDE)是多么的便利.不管是Java.C还是Python,当IDE会帮你检查语法.后台编译,或者自动导入你需要的库时,写代码就变得容易许多.另外 ...

  7. 读取raw文件的方法。

    Android开发者有些文件比如音频,视频,.html,.mp3等等这些文件不希望编译器编译而保持原始原貌打包进apk文件(这在游戏开发中很常见和普遍,如游戏用到的游戏音乐.图等资源),那么可以使用A ...

  8. Several ports (8005, 8080, 8009) required by Tomcat v7.0 Server at localhost are already in use.

    Several ports (8005, 8080, 8009) required by Tomcat v7.0 Server at localhost are already in use. The ...

  9. undefined reference to typeinfo - C++ error message

    undefined reference to typeinfo - C++ error message There are some compiler and loader error message ...

  10. Code First Migrations更新数据库结构的具体步骤

    一.打开程序包管理器控制台 当你的实体模型与数据库架构不一致时,引发以下错误:The model backingthe 'SchoolContext' context has changed sinc ...