📅  最后修改于: 2023-12-03 15:14:36.845000             🧑  作者: Mango
在Dart语言中,数据枚举是指一种定义有限数量值的类型。这些值通常相互关联,因此它们可以用来描述应用程序中的不同状态。
在Dart中,可以使用enum
关键字来定义枚举类型。例如:
enum Color {
red,
green,
blue
}
在这个例子中,我们定义了一个名为Color
的枚举类型,它有三个值:red
、green
和blue
。当定义枚举类型时,每个值的名称必须是唯一的。
使用枚举类型非常简单。可以通过枚举类型的名称来引用特定的枚举值。例如:
void main() {
var myColor = Color.red;
print(myColor); // 输出 'Color.red'
}
在这个例子中,我们定义了一个名为myColor
的变量,并将其设置为枚举类型Color
中的一个值。然后,我们通过打印变量的值来验证它是否正确设置。
枚举类型可以用于许多常规任务,例如保存特定状态的值。
enum Status {
new,
pending,
approved,
rejected
}
class Request {
Status status;
//...
}
在这个例子中,我们定义了一个名为Status
的枚举类型,它定义了四个值,表示不同的请求状态。然后,我们定义了一个名为Request
的类,该类包含一个Status
类型的status
字段,用于保存请求状态。
每个枚举值都有一个关联的整数值,可以通过index
访问。枚举的第一个值默认为0
,第二个值默认为1
,依此类推。
enum Color {
red, // 0
green, // 1
blue // 2
}
在这个例子中,Color.red
的整数值为0
,Color.green
的整数值为1
,Color.blue
的整数值为2
。
可以将字符串转换为枚举类型的值,方法是使用valueOf()
函数,例如:
enum Color {
red,
green,
blue
}
void main() {
var myColor = Color.valueOf("red");
print(myColor); // 输出 'Color.red'
}
在这个例子中,我们使用Color.valueOf()
函数将字符串值"red"
转换为Color.red
枚举值。
Dart的数据枚举是一种用于定义有限数量值的类型。可以使用enum
关键字来定义枚举类型,然后可以使用枚举类型名称来引用特定的枚举值。枚举类型可以用于许多常规任务,例如保存特定状态的值。每个枚举值都有一个关联的整数值,可以通过index
访问。可以将字符串转换为枚举类型的值,方法是使用valueOf()
函数。