我只是想知道是否可以重写toString
dart 中的方法,这就是我所拥有的:
enum Style{italic, bold, underline}
Style.italic.toString()
// print Style.italic, but I want it to be just italic
Run Code Online (Sandbox Code Playgroud)
lrn*_*lrn 14
目前无法覆盖enum
s 的方法。
编辑:从 Dart 2.17 开始就有可能,计划发布“增强枚举”功能(如果一切顺利的话)。
那时,您将能够在enum
声明上声明方法并覆盖toString
。
所以,你可以这样做:
enum Style {
italic, bold, underline;
@override
String toString() => this.name;
}
Run Code Online (Sandbox Code Playgroud)
得到你想要的东西。name
Dart 2.15 中添加了枚举值的 getter 。