黑马程序员技术交流社区

标题: 关于一道OC题 [打印本页]

作者: roblonely    时间: 2015-5-26 15:30
标题: 关于一道OC题
题目:
定义一个学生类,需要有姓名,年龄,考试成绩三个成员属性,创建5个对象,属性可以任意值。(Objective-C)
1)    不使用@property,手动编写他们的访问器方法(getter和setter),注意内存管理(手动管理内存)
2)    增加一个便利构造器(快速构造器)
3)    使用NSLog输出学生对象时,输出信息格式为:My Name Is XXX  Age Is XXX Score Is XXX
4)    对5个学生对象按照成绩—》年龄—》姓名优先级排序(成绩相同按照年龄排序,成绩年龄相同按照姓名排序(5个学生的属性值自己随便设定,姓名不考虑中文,按26个大小字母排序))

这是一道黑马入学考试题,我做了3个小时,终于做好了这道题,涉及到了很多OC语言基础的知识点,由于使用的是xocde6.3.2,没有办法进行手动内存管理,所以省略了这一部分,供大家参考

代码已经放在这篇博客中了,大家看看有没有问题,给小弟指点下
http://blog.csdn.net/u011349387/article/details/46008287
作者: yuang4074    时间: 2015-5-26 16:08
看了你代码:至少有一处错误:+(BOOL)isNameHigher:(NSString *)n1 and:(NSString *)n2
当n1和n2完全相等时,你没有返回值。比如:n1="roblonely",n2="roblonely"
作者: talent123    时间: 2015-5-29 15:11
如果考试还指定必须用OC呀...
作者: gclforios    时间: 2015-5-29 16:28
话说这个代码根本不符合原题的要求
作者: 这是829    时间: 2015-5-29 21:32
围观学习,努力!
作者: cqswzqcj    时间: 2016-1-23 10:35
首先没有手动管内存,其次根据姓名比较并不是说根据字符串长度比较,光看isHigher函数定义,只有你自己懂是什么意思
作者: cqswzqcj    时间: 2016-1-23 10:36
如果是妹子,前面的话当我没说。。。。。
作者: 小石头16544    时间: 2016-1-23 11:17
题目中的意思好像不是让按照名字的长度来排序的吧,C语言中有strcmp用来给字符串排序,那么oc中有没有对应的方法啊
作者: 小石头16544    时间: 2016-1-23 11:19
yuang4074 发表于 2015-5-26 16:08
看了你代码:至少有一处错误:+(BOOL)isNameHigher:(NSString *)n1 and:(NSString *)n2
当n1和n2完全相等 ...

大神,C语言中给字符串排序的函数strcmp,对oc中的NSString类的字符串不能使用,那么在oc中,如果想要排序的话,有没有对应的方法呢
作者: suihaixia54    时间: 2016-1-24 10:38
同样的问题,感觉蒙蒙哒
作者: chensc    时间: 2016-1-24 11:30
学习学习!
作者: guyuexing    时间: 2016-1-24 23:47
学习了!
作者: chensc    时间: 2016-1-29 20:30
学习学习!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2