有没有办法声明一个选项有限的变量?

vic*_*ria 2 java variables

我正在尝试编写一个变量(例如私有字符串颜色),但我希望它只能是黑色或白色,就像在我的类图中我将它写为color:{Black,White}。这是我在这个阶段可以宣布的吗?如果是这样怎么写?

Ren*_*ato 6

使用Enum. 例如:

public enum Color{
 WHITE, BLACK;
}
Run Code Online (Sandbox Code Playgroud)

更多信息在这里


czo*_*lbe 5

通常,如果要对字段值设置任何约束,您可以考虑使用 Enum,它是一种特殊的类/类型,您可以将变量声明为,以强制它接受一定范围的常量值。对于你的情况,

创建一个枚举:

public enum Colour{
   BLACK,
   WHITE
}
Run Code Online (Sandbox Code Playgroud)

像这样声明颜色字段:

private Colour productColour;

Run Code Online (Sandbox Code Playgroud)

值的分配将如下所示:

productColour = Colour.BLACK;

Run Code Online (Sandbox Code Playgroud)