便利构造器/代码块

直接上代码

Car * car = [[Car alloc] init];alloc是类方法,init是实例方法,Car alloc创建了一个对象,然后调用对象的init方法进行该对象的初始化。
-(id) initWithName : (NSString *) aName
andAge : (int) anAge
{
if(self = [super init]){
name = [aName retain];
age = anAge;
}
}
这里不是判断self与[super init]是否相等,而是判断是否可以成功初始化。而用if判断下,是为了防止self为空的情况
+(id) studentWithName : (NSString *) aName
andAge : (int ) anAge
{
id obj = [[Student alloc] initWithName:aName andAge:anAge];
//设置obj的成员值
[obj autorelease];
return obj;
}
Student *stu1=[Student studentWithName:achao andAge:22];
这个初始化的临时对象不用手动释放,类方法的便利构造器初始化实例变量后不用手动release,然后直接用stu1来调用类的方法来使用被初始化的值


1 void (^myBlock)(NSString *x);//声明一个代码快myBlock
myBlock=^(NSString *x){

NSLog(@"%@",x);
};// 定义代码块
myBlock(@"achao");//使用代码块
}

2 void (^myBlock)(NSString *x)=^(NSString *x){
NSLog(@"%@",x);
};// 定义代码块
myBlock(@"achao");//使用代码块

3 void (^aVoidBlock) () = ^ {
NSLog(@"Message");
};
aVoidBlock();


int (^add)(int x,int y)=^(int x,int y){
return x+y;
};
int result=add(5,6);
NSLog(@"%d",result);



NSMutableArray *array = [NSMutableArray
arrayWithObjects : @"Bcd",@"Abc",@"aCd",@"Ebf",nil];
[array sortUsingComparator:
^NSComparisonResult(id x,id y){
return [x compare: y];
}];
for(id obj in array){
NSLog(@"%@",obj);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值