黑马程序员技术交流社区

标题: 枚举的文字如何打印呢?打印出来是数字怎么办? [打印本页]

作者: BBD2008    时间: 2014-12-29 21:13
标题: 枚举的文字如何打印呢?打印出来是数字怎么办?
枚举类型中自定义的文字如何打印?
作者: 从今以后    时间: 2014-12-30 00:10
貌似不行吧,本质就是int,只能自己规定根据数字打印字符串吧= =
作者: lnyg1992    时间: 2014-12-30 08:38
应该不行
作者: 枫煠    时间: 2014-12-31 23:10
我只想到两种方式定义的枚举
  1. typedef NS_ENUM(NSInteger, kType) {
  2.     kTypeString = 0,
  3.     kTypeNumber,
  4.     kTypeArray,
  5.     kTypeBool,
  6. };
复制代码

  1. -(NSString*) enumToString:(kType)type{
  2.     NSString* enumStr = nil;
  3.     switch (type) {
  4.         case kTypeString:
  5.             enumStr = @"kTypeString";
  6.             break;
  7.         case kTypeNumber:
  8.             enumStr = @"kTypeNumber";
  9.             break;
  10.         case kTypeArray:
  11.             enumStr = @"kTypeArray";
  12.             break;
  13.         case kTypeBool:
  14.             enumStr = @"kTypeBool";
  15.             break;
  16.         default:
  17.             break;
  18.     }
  19.     return enumStr;
  20. }
复制代码
  1. -(NSDictionary*) enumDataSource{
  2.     return @{@(kTypeString):@"kTypeString",
  3.              @(kTypeNumber):@"kTypeNumber",
  4.              @(kTypeArray):@"kTypeArray"
  5.              @(kTypeBool):@"kTypeBool"};
  6. }

  7. -(NSString*) getEnumToStringFromDic:(kType)type{
  8.     return [[self enumDataSource] objectForKey:@(type)];
  9. }
复制代码










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