38 带数据的枚举
枚举的不同选项可以携带不同类型的数据。
norm
enum Result {
Success(Integer count),
Failure(String reason)
}
main() {
Result first = Result.Success(count: 3)
Result second = Result.Failure(reason: "empty")
printLine(first == Result.Success(count: 3))
printLine(second == Result.Failure(reason: "empty"))
}预期输出:
text
true
trueSuccess 携带整数数量,Failure 携带字符串原因。构造时给负载字段写标签,每个值都保留自己属于哪个变体。
动手试试:用不同数量再构造一个 Success 并比较。
详细规则:参考。