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特定的行为,但我相信有办法。
唯一想到的是使用一个单独的辅助类来实现此功能,但这似乎有点过分,不是吗?