2010-08-07 35 views
1

Java中的枚举可以声明如下模拟java的枚举Objective-C的

enum MyEnum { 
    ONE("descr for one"), 
    TWO("descr for two"); 

    private String descr; 

    MyEnum(String descr) { 
    this.descr=descr; 
    } 

    public String getDescr() {return this.descr;} 
} 

因此,我们可以随时拨打myEnumInstance.getDescr()用于获取枚举描述。当然,可以在构造函数中添加几个变量并创建其相应的访问器。 在objective-c中有什么相似之处吗?

谢谢

回答

5

不幸的是,在ObjectiveC中没有任何类似的东西。

你可以有一个辅助类映射到枚举* NSString的...虽然

事情是这样的:

typedef enum { 
    kONE, 
    kTWO 
} MyEnum; 

然后一个类的方法/消息的地方:

+ (NSString*) getDescriptionFor:(MyEnum)e 
{ 
    switch(e) { 
     case kONE: 
      return @"descr for one"; 
     case kTWO: 
      return @"descr for two"; 
     default: 
      break; 
    } 
    return @""; 
} 
+0

OK ...我会去帮助这个班,谢谢 – Leonardo 2010-08-07 20:07:24