oc中枚举映射字符串技巧


  后台返枚举数据给app,app需要对不同枚举转换成字符串显示。

  一般想到方法用 switch 根据不同枚举变量返回不同字符串,结果就是判断代码写得很长,不优雅。更简便方式有如下:

typedef NS_ENUM(NSInteger, StatusType) {
    StatusTypeNormal = 0, // 正常
    StatusTypeConnecting = 1, // 连接中
    StatusTypeSuccess = 2, // 成功
    StatusTypeFail = 5 // 失败
};


const NSString *StatusTypeStringMap[] = {
    [StatusTypeNormal] = @"正常",
    [StatusTypeConnecting] = @"连接中",
    [StatusTypeSuccess] = @"成功",
    [StatusTypeFail] = @"失败"
};

  

  使用的时候直接这样调用:

StatusType type = StatusTypeFail;
NSLog(@"%@", StatusTypeStringMap[type]); //  NSLog: 失败

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM