【发布时间】:2015-11-29 21:34:20
【问题描述】:
在 Java 中,我有一个像这样的枚举:
public enum Toppings {
PEPPERONI,
EXTRA_CHEESE,
SECRET_SAUCE;
@Override
public String toString() {
switch(this) {
case EXTRA_CHEESE: return "Extra Cheese";
case SECRET_SAUCE: return "Secret Sauce™";
}
String name = name();
return name.charAt(0) + name.substring(1, name.length()).replace('_', ' ').toLowerCase();
}
}
我想在 Objective-C 中重新制作它。到目前为止,我已经这样做了:
NS_ENUM(NSInteger, Toppings) {
PEPPERONI,
EXTRA_CHEESE,
SECRET_SAUCE
};
然后我被难住了。 我将如何创建toString() 方法?我知道它相当复杂并且使用了一些 Java 特定的行为,但我确信有办法。
唯一想到的是拥有一个具有此功能的单独帮助程序类,但这似乎有点多,不是吗?
【问题讨论】:
标签: objective-c enums