A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

黑马入学测试题详解








昨天申请的入学测试,做了大概半天左右,把代码分享出来,不足之处望指点,不要抄代码,理解思路最重要


目前技术分不够,看完评论下谢谢





顺便问下有没IOS12月5日就业班的小伙伴,说不定我们是同学{:2_31:}


  1. <font size="3">第一至五题:
  2. 1、 Self和super的区别?

  3.     答:self:当前方法调用者,调用自己的方法,如果没有去父类找。谁调用self,
  4.        self就代表谁。self在类方法中指当前类,实例方法中指当前实例对象.

  5.         super表示调用父类方法.



  6. 2、 定义属性时候,什么情况下用copy、assign、retain、strong、week

  7.     答:copy:需要使用对象数据,但不想影响原对象内容是可使用cpoy
  8.        用于NSString,block等类型在属性set方法中的作用是
  9.        release旧值,copy新值

  10.         assign:直接赋值,用于基本数据类型,定义int double float时用assign

  11.         retain声明 在MRC下要增加对象的引用计数时用retain,用于oc对象类型
  12.         set方法中retain的作用release旧值retain新值

  13.         strong 相当于retain会将对象的引用计数加1,让对象不容易死

  14.         week 弱指针,适用于OC对象,指向的对象会被立即释放 将指针赋值为nil



  15. //说明:
  16. //因为test2是对象方法 用self表示当前类自己
  17. //test3实例方法 self表示当前实例对象

  18. 3、 下面第一个self指向的是___当前Person类____,第二个self指向的是__Person中的实例变量_age_______.

  19. #import <Foundation/Foundation.h>
  20. @interface Person : NSObject
  21. {
  22.     int _age;
  23. }
  24. + (void)test1;
  25. + (void)test2;
  26. - (void)text3;
  27. @end

  28. @implementation Person
  29. + (void)test1
  30. {
  31.     NSLog(@"调用了test1方法");
  32. }
  33. + (void)test2
  34. {
  35.     [self test1];
  36. }
  37. - (void)text3
  38. {
  39.     NSLog(@"%d",self->_age);
  40. }

  41. @end




  42. // .语法相当于隐式调用了对象的set方法 系统自动调用
  43. 4、 下面p.age = 10内部做了哪部操作(A)。
  44. #import <Foundation/Foundation.h>
  45. #import "Person.h"
  46. int main(int argc, const char * argv[])
  47. {
  48.     Person *p = [Person new];
  49.     p.age = 10;
  50.     int a = p.age;
  51.     return 0;
  52. }
  53. A.    [p setAge:10]
  54. B.    [p age]
  55. C.     以上都做
  56. D.    什么也没做
  57. </font>
复制代码
5,

  1. #import <Foundation/Foundation.h>

  2. //5、 编写一个程序,用于接受从终端输入的整数,提取并用英文显示这个数的每一位数。例如输入112 输出 One One Two。(Objective-C)

  3. int main(int argc, const char * argv[]) {
  4.     @autoreleasepool {
  5.         
  6.         //创建变量,存储用户输入的数字
  7.         int input;
  8.         //创建数组,存放英文数字
  9.         NSArray *array=@[@"zero",@"one",@"two",@"three",@"four",@"five"         ,@"six",@"seven",@"eight",@"nine"];
  10.         //创建可变字符串,存放结果
  11.         NSMutableString *result=[NSMutableString string];
  12.         //接收用户输入
  13.         scanf("%d",&input);
  14.         //转化为OC字符串
  15.         NSString *str=[NSString stringWithFormat:@"%d",input];
  16.         
  17.         for (int i=0; i<str.length; i++) {
  18.             
  19.             //循环取出每一个数字 由于返回值是char字符串将字符编码-48再转换为int数据
  20.             input=(int)[str characterAtIndex:i]-48;
  21.             //追加每个字符
  22.             [result appendFormat:array[input]];
  23.             //追加空格
  24.             [result appendFormat:@" "];
  25.             
  26.         }
  27.         //输出
  28.         NSLog(@"%@",result);
  29.         
  30.         
  31.     }
  32.     return 0;
  33. }
复制代码

看完的好心人评论下,谢谢,目前正在赚技术分
后续在下面


点评

不错,支持下,加油啊,早点进入黑马  发表于 2015-11-17 09:03

72 个回复

倒序浏览
6, #import <Foundation/Foundation.h> // 6、 创建一个NSDictionary对象,随便往里面添加内容,然后通过代码产生可变和不可变副本,这些复制是深复制还是浅复制?(Objective-C)  int main(int argc, const char * argv[]) { @autoreleasepool {  NSDictionary *dict=[NSDictionary dictionaryWithObject:@"zhangsan" forKey:@"zs"]; NSLog(@"dict=%p",dict);  //这是浅复制 NSMutableDictionary *dictCopy1=[dict copy]; //因为是浅复制,所以copy后的对象不能修改 ,这句代码执行会报错 // [dictCopy1 setValue:@"wangwu" forKey:@"wu" ]; NSLog(@"dictCopy1=%p",dictCopy1);     //这是深复制 NSMutableDictionary *dictCopy2=[dict mutableCopy]; //深复制,copy后对象可以修改 执行成功! [dictCopy2 setValue:@"wangwu" forKey:@"wu"]; NSLog(@"%@",dictCopy2); NSLog(@"%p",dictCopy2);     } return 0; }  7, #import <Foundation/Foundation.h> //7、 现有如下定义的字符串: NSString * str=@“iphoneAndroid”,能不能对该字符串进行修改,如果能,请输出删除Android后的新字符串。(Objective-C)  int main(int argc, const char * argv[]) { @autoreleasepool {  /*思路:原本 NSString * str=@“iphoneAndroid”是不可变字符串,不能被修改, 最简单的方法直接截取字符串即可。也可借用copy深复制后修改或将其转换为可变字符串修改或者借用可变字符串*/  //方法一 NSString * str=@"iphoneAndroid"; //从头开始截取6个字符字符串 NSString *subString=[str substringToIndex:6]; str=subString; NSLog(@"str=%@",str);  //方法二  NSString * str1=@"iphoneAndroid"; //将str放入可变字符串 NSMutableString *strNew=[NSMutableString stringWithFormat:@"%@",str1]; //查找子字符串位置 注意:结构体不能加*号! NSRange range=[strNew rangeOfString:@"Android"]; //根据查找到的索引删除字符串内容 [strNew deleteCharactersInRange:range]; //将删除后的字符串赋值给原字符串 str1=strNew; NSLog(@"str1=%@",str1);  //方法三 NSString * str2=@"iphoneAndroid"; NSMutableString *strNew2=[str2 mutableCopy]; NSRange r=NSMakeRange(6, 7); [strNew2 deleteCharactersInRange:r]; NSLog(@"str2=%@",strNew2);   } return 0; }  8, #import <Foundation/Foundation.h> //8、 利用分类给NSString扩展3个方法(Objective-C) //1> 字符串反转(比如@”123”调用方法后返回@”321”) //2> 计算英文字母的个数(比如@”5435abc54abc3AHJ5”调用方法后返回的是9) //3> 去除字符串两端空格(比如@” 1235 45 ”调用方法后返回@”1235 45”)   #import "NSString+Extension.h" int main(int argc, const char * argv[]) { @autoreleasepool { //1,字符串反转 NSString *str=[[NSString alloc]init]; str=[str CharacterInversion:@"12345"]; NSLog(@"%@",str); //2,计算英文字母的个数 NSString *str2=@"5435abc54abc3AHJ5"; NSInteger i=[str2 EnglishCount:str2]; NSLog(@"%li",i); //3,去除字符串两端空格 NSString *str3=@" 1235 45 "; str3=[str3 clearSpace:str3]; NSLog(@"%@",str3);  } return 0; } @interface NSString (Extension) //声明字符反转方法 -(NSString *)CharacterInversion:(NSString *)str;  //计算英文字母方法 -(NSInteger)EnglishCount:(NSString *)str;  //去除字符串两端空格方法 -(NSString *)clearSpace:(NSString *)str; @end  #import "NSString+Extension.h"  @implementation NSString (Extension)  //字符反转方法 -(NSString *)CharacterInversion:(NSString *)str{  //创建可变数组存放结果 NSMutableArray *array=[NSMutableArray array];  NSString *strNew; //注意characterAtIndex:是从0开始计算的因此这里长度要减1 for (NSInteger i=str.length-1; i>=0; i--) {  //将循环到的每个字符转换成oc字符 strNew=[NSString stringWithFormat:@"%c",[str characterAtIndex:i]]; //将字符累加到数组 [array addObject:strNew];   } //将数组转换成字符串 用空格隔开 return [array componentsJoinedByString:@" "];  }  //计算英文字母方法 -(NSInteger)EnglishCount:(NSString *)str{  char c; NSInteger count=0; for (NSInteger i=0;i<str.length;i++) { //循环取出每个字符 c=[str characterAtIndex:i]; //判断是否是字母 是count累加 if ((c >='a' && c<='z')|| (c >='A' && c<='Z')) { count++;  }   }  return count;  }  //去除字符串两端空格方法 -(NSString *)clearSpace:(NSString *)str{  //因为要去除空格因此将字符串装换为可变字符串 NSMutableString *str1 = [[NSMutableString alloc] initWithString:str]; //字符串不能是单个空格 if (![str isEqual:@" "]) {  //循环判断第一个字符是否是空格 while ([str1 characterAtIndex:0] == ' ') { //从开始位置删除1个字符 [str1 deleteCharactersInRange:NSMakeRange(0, 1)]; }  while ( [str1 characterAtIndex:([ str1 length]-1) ] == ' ') { [str1 deleteCharactersInRange:NSMakeRange(([str1 length]-1), 1)]; }   }  return str1;   } @end  9, //9、 现在有一个有序的数组,要求用户输入一个整数放到数组中还保证这个数组是有序的。例如原数组为@[@1,@3,@5,@7,@9]; 插入8之后为@[@1,@3,@5,@7,@8,@9];(Objective-C) int main(int argc, const char * argv[]) { @autoreleasepool {  NSMutableArray *array = [NSMutableArray arrayWithArray:@[@1,@3,@5,@7,@9]]; long count= array.count; NSLog(@"请输入一个整数:"); int i; scanf("%d",&i); //将int型数据转换成OC中的NSNumber型 NSNumber *num=[NSNumber numberWithInt:i];  for (int i=0; i<count; i++) { //判断如果输入的数字与当前数字是升序的关系 即结果小于等于0 //将输入的字符插入到当前循环到的数组下标位置 if ([num compare:array[i]]<=0) {  [array insertObject:num atIndex:i]; break;  } //经过上面循环如果字符串长度无变化 说明输入的数字大于数组的数字追加到数组末尾 if (array.count==count) {  [array addObject:num];  }  } NSLog(@"%@",array);   } return 0; }  10, #import <Foundation/Foundation.h> //10、 定义一个学生类,需要有姓名,年龄,考试成绩三个成员属性,创建5个对象,属性可以任意值。(Objective-C) // //1) 不使用@property,手动编写他们的访问器方法(getter和setter),注意内存管理(手动管理内存) //2) 增加一个便利构造器(快速构造器) //3) 使用NSLog输出学生对象时,输出信息格式为:My Name Is XXX Age Is XXX Score Is XXX //4) 对5个学生对象按照成绩—》年龄—》姓名优先级排序(成绩相同按照年龄排序,成绩年龄相同按照姓名排序(5个学生的属性值自己随便设定,姓名不考虑中文,按26个大小字母排序))  #import "Student.h" int main(int argc, const char * argv[]) { @autoreleasepool {  //调用自定义构造方法给属性赋值 Student *s1=[[Student alloc]initWithName:@"小明" andAge:15 andScore:45]; Student *s2=[[Student alloc]initWithName:@"王五" andAge:15 andScore:45]; Student *s3=[[Student alloc]initWithName:@"赵四" andAge:18 andScore:90]; Student *s4=[[Student alloc]initWithName:@"李明" andAge:16 andScore:80.9]; Student *s5=[[Student alloc]initWithName:@"张三" andAge:18 andScore:90]; //将对象放入数组 NSArray *array=[NSArray arrayWithObjects:s1,s2,s3,s4,s5, nil]; //调用方法 执行排序 NSArray *arrayNew=[array sortedArrayUsingSelector:@selector(compareStu:)]; //采用快速枚举遍历数组 for (Student *stu in arrayNew) {  //由于在Student类中已经重写desciption方法,直接输出即可 NSLog(@"%@",stu);  } //用完销毁对象 [s1 release]; [s2 release]; [s3 release]; [s4 release]; [s5 release];  } return 0; }  #import <Foundation/Foundation.h>  @interface Student : NSObject{  NSString *_name; int _age; int _score;  } //手动创建get、set方法 -(void)setName:(NSString *)name; -(NSString *)name;   -(void)setAge:(int)age; -(int)age;   -(void)setScore:(int)score; -(int)score;    //自定义构造方法 初始化成员变量 -(id)initWithName:(NSString *)name andAge:(int)age andScore:(int)score; //用当前对象与传入对象比较 -(NSComparisonResult)compareStu:(Student *)student; @end  #import "Student.h"  @implementation Student  -(void)dealloc{ //因为name在set方法引用计数加了1,这里要release一次才能释放对象 [_name release]; [super dealloc]; NSLog(@"Student delloc");  }  -(void)setName:(NSString *)name{  //如果传进来的nam不等于当前对象name,让当前对象release一次, //传入对象引用计数加1 赋值给当前对象 if (_name!=name) {  [_name release]; _name=[name retain];  }  _name=name;   } -(NSString *)name{  return _name;  }   -(void)setAge:(int)age{  _age=age;  } -(int)age{   return _age; }   -(void)setScore:(int)score{  _score=score;  } -(int)score{  return _score;  }  -(id)initWithName:(NSString *)name andAge:(int)age andScore:(int)score{  //判断父类初始化成功 if (self=[super init]) {  _name=name; _age=age; _score=score;   }  return self;  }  //重写desciption方法,按格式输入内容 -(NSString *)description{  return [NSString stringWithFormat:@"My Name Is %@ Age Is %d Score Is %d",_name,_age,_score];  }  -(NSComparisonResult)compareStu:(Student *)student{  //比较成绩 NSComparisonResult result=[[NSNumber numberWithInt:student.score] compare:[NSNumber numberWithInt:self.score]]; //成绩相等,比较年龄 if (result==NSOrderedSame) {  result=[[NSNumber numberWithInt:student.age]compare: [NSNumber numberWithInt:self.age]]; //年龄相等 比较姓名 if (result==NSOrderedSame) {  result=[self.name compare:student.name]; }  } //返回结果 return result;    }  @end  看完的好心人评论下,谢谢,目前正在赚技术分。
回复 使用道具 举报
6,
#import <Foundation/Foundation.h>
// 6、 创建一个NSDictionary对象,随便往里面添加内容,然后通过代码产生可变和不可变副本,这些复制是深复制还是浅复制?(Objective-C)

int main(int argc, const char * argv[]) {
@autoreleasepool {

NSDictionary *dict=[NSDictionary dictionaryWithObject:@"zhangsan" forKey:@"zs"];
NSLog(@"dict=%p",dict);

//这是浅复制
NSMutableDictionary *dictCopy1=[dict copy];
//因为是浅复制,所以copy后的对象不能修改 ,这句代码执行会报错
// [dictCopy1 setValue:@"wangwu" forKey:@"wu" ];
NSLog(@"dictCopy1=%p",dictCopy1);




//这是深复制
NSMutableDictionary *dictCopy2=[dict mutableCopy];
//深复制,copy后对象可以修改 执行成功!
[dictCopy2 setValue:@"wangwu" forKey:@"wu"];
NSLog(@"%@",dictCopy2);
NSLog(@"%p",dictCopy2);




}
return 0;
}

7,
#import <Foundation/Foundation.h>
//7、 现有如下定义的字符串: NSString * str=@“iphoneAndroid”,能不能对该字符串进行修改,如果能,请输出删除Android后的新字符串。(Objective-C)

int main(int argc, const char * argv[]) {
@autoreleasepool {

/*思路:原本 NSString * str=@“iphoneAndroid”是不可变字符串,不能被修改,
最简单的方法直接截取字符串即可。也可借用copy深复制后修改或将其转换为可变字符串修改或者借用可变字符串*/

//方法一
NSString * str=@"iphoneAndroid";
//从头开始截取6个字符字符串
NSString *subString=[str substringToIndex:6];
str=subString;
NSLog(@"str=%@",str);

//方法二

NSString * str1=@"iphoneAndroid";
//将str放入可变字符串
NSMutableString *strNew=[NSMutableString stringWithFormat:@"%@",str1];
//查找子字符串位置 注意:结构体不能加*号!
NSRange range=[strNew rangeOfString:@"Android"];
//根据查找到的索引删除字符串内容
[strNew deleteCharactersInRange:range];
//将删除后的字符串赋值给原字符串
str1=strNew;
NSLog(@"str1=%@",str1);

//方法三
NSString * str2=@"iphoneAndroid";
NSMutableString *strNew2=[str2 mutableCopy];
NSRange r=NSMakeRange(6, 7);
[strNew2 deleteCharactersInRange:r];
NSLog(@"str2=%@",strNew2);


}
return 0;
}

8,
#import <Foundation/Foundation.h>
//8、 利用分类给NSString扩展3个方法(Objective-C)
//1> 字符串反转(比如@”123”调用方法后返回@”321”)
//2> 计算英文字母的个数(比如@”5435abc54abc3AHJ5”调用方法后返回的是9)
//3> 去除字符串两端空格(比如@” 1235 45 ”调用方法后返回@”1235 45”)


#import "NSString+Extension.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
//1,字符串反转
NSString *str=[[NSString alloc]init];
str=[str CharacterInversion:@"12345"];
NSLog(@"%@",str);
//2,计算英文字母的个数
NSString *str2=@"5435abc54abc3AHJ5";
NSInteger i=[str2 EnglishCount:str2];
NSLog(@"%li",i);
//3,去除字符串两端空格
NSString *str3=@" 1235 45 ";
str3=[str3 clearSpace:str3];
NSLog(@"%@",str3);

}
return 0;
}
@interface NSString (Extension)
//声明字符反转方法
-(NSString *)CharacterInversion:(NSString *)str;

//计算英文字母方法
-(NSInteger)EnglishCount:(NSString *)str;

//去除字符串两端空格方法
-(NSString *)clearSpace:(NSString *)str;
@end

#import "NSString+Extension.h"

@implementation NSString (Extension)

//字符反转方法
-(NSString *)CharacterInversion:(NSString *)str{

//创建可变数组存放结果
NSMutableArray *array=[NSMutableArray array];

NSString *strNew;
//注意characterAtIndex:是从0开始计算的因此这里长度要减1
for (NSInteger i=str.length-1; i>=0; i--) {

//将循环到的每个字符转换成oc字符
strNew=[NSString stringWithFormat:@"%c",[str characterAtIndex:i]];
//将字符累加到数组
[array addObject:strNew];


}
//将数组转换成字符串 用空格隔开
return [array componentsJoinedByString:@" "];

}

//计算英文字母方法
-(NSInteger)EnglishCount:(NSString *)str{

char c;
NSInteger count=0;
for (NSInteger i=0;i<str.length;i++) {
//循环取出每个字符
c=[str characterAtIndex:i];
//判断是否是字母 是count累加
if ((c >='a' && c<='z')|| (c >='A' && c<='Z'))
{
count++;

}


}

return count;

}

//去除字符串两端空格方法
-(NSString *)clearSpace:(NSString *)str{

//因为要去除空格因此将字符串装换为可变字符串
NSMutableString *str1 = [[NSMutableString alloc] initWithString:str];
//字符串不能是单个空格
if (![str isEqual:@" "]) {

//循环判断第一个字符是否是空格
while ([str1 characterAtIndex:0] == ' ')
{ //从开始位置删除1个字符
[str1 deleteCharactersInRange:NSMakeRange(0, 1)];
}

while ( [str1 characterAtIndex:([ str1 length]-1) ] == ' ')
{
[str1 deleteCharactersInRange:NSMakeRange(([str1 length]-1), 1)];
}


}

return str1;


}
@end


回复 使用道具 举报
9,
//9、 现在有一个有序的数组,要求用户输入一个整数放到数组中还保证这个数组是有序的。例如原数组为@[@1,@3,@5,@7,@9]; 插入8之后为@[@1,@3,@5,@7,@8,@9];(Objective-C)
int main(int argc, const char * argv[]) {
@autoreleasepool {

NSMutableArray *array = [NSMutableArray arrayWithArray:@[@1,@3,@5,@7,@9]];
long count= array.count;
NSLog(@"请输入一个整数:");
int i;
scanf("%d",&i);
//将int型数据转换成OC中的NSNumber型
NSNumber *num=[NSNumber numberWithInt:i];

for (int i=0; i<count; i++) {
//判断如果输入的数字与当前数字是升序的关系 即结果小于等于0
//将输入的字符插入到当前循环到的数组下标位置
if ([num compare:array]<=0) {

[array insertObject:num atIndex:i];
break;

}
//经过上面循环如果字符串长度无变化 说明输入的数字大于数组的数字追加到数组末尾
if (array.count==count) {

[array addObject:num];

}

}
NSLog(@"%@",array);


}
return 0;
}



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

#import "Student.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {

//调用自定义构造方法给属性赋值
Student *s1=[[Student alloc]initWithName:@"小明" andAge:15 andScore:45];
Student *s2=[[Student alloc]initWithName:@"王五" andAge:15 andScore:45];
Student *s3=[[Student alloc]initWithName:@"赵四" andAge:18 andScore:90];
Student *s4=[[Student alloc]initWithName:@"李明" andAge:16 andScore:80.9];
Student *s5=[[Student alloc]initWithName:@"张三" andAge:18 andScore:90];
//将对象放入数组
NSArray *array=[NSArray arrayWithObjects:s1,s2,s3,s4,s5, nil];
//调用方法 执行排序
NSArray *arrayNew=[array sortedArrayUsingSelector:@selector(compareStu:)];
//采用快速枚举遍历数组
for (Student *stu in arrayNew) {

//由于在Student类中已经重写desciption方法,直接输出即可
NSLog(@"%@",stu);

}
//用完销毁对象
[s1 release];
[s2 release];
[s3 release];
[s4 release];
[s5 release];

}
return 0;
}

#import <Foundation/Foundation.h>

@interface Student : NSObject{

NSString *_name;
int _age;
int _score;

}
//手动创建get、set方法
-(void)setName:(NSString *)name;
-(NSString *)name;


-(void)setAge:(int)age;
-(int)age;


-(void)setScore:(int)score;
-(int)score;



//自定义构造方法 初始化成员变量
-(id)initWithName:(NSString *)name andAge:(int)age andScore:(int)score;
//用当前对象与传入对象比较
-(NSComparisonResult)compareStu:(Student *)student;
@end

#import "Student.h"

@implementation Student

-(void)dealloc{
//因为name在set方法引用计数加了1,这里要release一次才能释放对象
[_name release];
[super dealloc];
NSLog(@"Student delloc");

}

-(void)setName:(NSString *)name{

//如果传进来的nam不等于当前对象name,让当前对象release一次,
//传入对象引用计数加1 赋值给当前对象
if (_name!=name) {

[_name release];
_name=[name retain];

}

_name=name;


}
-(NSString *)name{

return _name;

}


-(void)setAge:(int)age{

_age=age;

}
-(int)age{


return _age;
}


-(void)setScore:(int)score{

_score=score;

}
-(int)score{

return _score;

}

-(id)initWithName:(NSString *)name andAge:(int)age andScore:(int)score{

//判断父类初始化成功
if (self=[super init]) {

_name=name;
_age=age;
_score=score;


}

return self;

}

//重写desciption方法,按格式输入内容
-(NSString *)description{

return [NSString stringWithFormat:@"My Name Is %@ Age Is %d Score Is %d",_name,_age,_score];

}

-(NSComparisonResult)compareStu:(Student *)student{

//比较成绩
NSComparisonResult result=[[NSNumber numberWithInt:student.score] compare:[NSNumber numberWithInt:self.score]];
//成绩相等,比较年龄
if (result==NSOrderedSame) {

result=[[NSNumber numberWithInt:student.age]compare:
[NSNumber numberWithInt:self.age]];
//年龄相等 比较姓名
if (result==NSOrderedSame) {

result=[self.name compare:student.name];
}

}
//返回结果
return result;



}

@end

看完的好心人评论下,谢谢,目前正在赚技术分。

回复 使用道具 举报
楼主真心好人!!!
回复 使用道具 举报
D_Time 中级黑马 2015-11-5 11:08:44
7#
感觉好难啊,优点害怕过不去,现在基础视频看到14天了
回复 使用道具 举报
刚开始学OC,过来学习,,楼主幸苦了,,
回复 使用道具 举报
toveyloves 来自手机 中级黑马 2015-11-5 12:58:49
9#
这是考基础?
回复 使用道具 举报
楼主,一共就10道题么?我也准备1205期加个好友吧
回复 使用道具 举报
赶快面试吧,11号之前就招满了
回复 使用道具 举报
楼主学了多少天了~ 是基础班学的 还是就业班学的啊
回复 使用道具 举报
IOS12月5日的是长沙的吗?
回复 使用道具 举报
厉害厉害
回复 使用道具 举报
感觉好难好难的样子
回复 使用道具 举报
arhui 中级黑马 2015-11-5 22:17:55
16#
谢谢分享 努力学习中。。。。。。
回复 使用道具 举报
加油!赞!
回复 使用道具 举报
好难呀,正在学OC内存管理
回复 使用道具 举报
可以的,祝你通过技术分早日达到
回复 使用道具 举报
我也是12月5日ios14期。。。。
回复 使用道具 举报
1234下一页
您需要登录后才可以回帖 登录 | 加入黑马