說明 | |
---|---|
首次發(fā)布 | 2016年12月20日 |
最近更新 | 2018年02月26日 |
枚舉值和字符串的映射
typedef NS_ENUM(NSUInteger, MessageType) {
MessageTypeLogin = 0,
MessageTypeRegister,
MessageTypeUpdatePsw,
};
const NSString *MessageTypeArray[] = {
[MessageTypeLogin] = @"mseesage_login",
[MessageTypeRegister] = @"message_register",
[MessageTypeUpdatePsw] = @"message_update_psw"
};
// 使用示例:
- (void)loginWithMobile:(NSString *)mobile messageType:(MessageType)type {
NSLog(@"字符串是:%@", MessageTypeArray[type]);
}
readonly屬性的擴(kuò)展
@interface Worker : NSObject
@property (nonatomic, readonly, copy) NSString *name;
@end
@interface Worker ()
@property (nonatomic, copy) NSString *name;
@end
小括號(hào)內(nèi)聯(lián)復(fù)合表達(dá)式: 意義在于將代碼整理分塊
镊折,將同一個(gè)邏輯層級(jí)的代碼包在一起;同時(shí)對(duì)于一個(gè)無需復(fù)用小段邏輯沉删,也免去了重量級(jí)的調(diào)用函數(shù)睦柴。
// 示例一
self.redView = ({
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];
view.backgroundColor = [UIColor redColor];
[self.view addSubview:view];
view;
});
// 示例二
self.result = ({
double result = 0;
for (int i = 0; i <= M_2_PI; i+= M_PI_4) {
result += sin(i);
}
result;
});
后記
參考:該文章參考 孫老師 的博客,在此表示衷心的感謝洋侨。