如何在java枚举中使用整数
有没有办法在Java枚举中保持正整数 我正在开发一个餐厅管理系统。我想知道客户将订购多少单位的食品(例如1、2、5等) 因此,我在GUI中添加了一个组合框,其中单元列表将显示为:1、2、3等。现在,Java Enum不允许我这样编写代码:如何在java枚举中使用整数,java,enums,Java,Enums,有没有办法在Java枚举中保持正整数 我正在开发一个餐厅管理系统。我想知道客户将订购多少单位的食品(例如1、2、5等) 因此,我在GUI中添加了一个组合框,其中单元列表将显示为:1、2、3等。现在,Java Enum不允许我这样编写代码: public enum UnitEnum { 1,2,3,4,5; } 我至少可以这样写: public enum UnitEnum { _1,_2,_3,_4,_5; } 但它看起来非常奇怪。有没有办法让它
public enum UnitEnum {
1,2,3,4,5;
}
我至少可以这样写:
public enum UnitEnum {
_1,_2,_3,_4,_5;
}
但它看起来非常奇怪。有没有办法让它看起来像第一个?(在没有得分不足的情况下)。您可以:
public enum UnitEnum {
ONE(1),
TWO(2),
THREE(3),
FOUR(4),
FIVE(5);
public final int quantity;
UnitEnum(int q) {
this.quantity = q;
}
public int getQuantity() { return this.quantity; }
}
你可以做:
public enum UnitEnum {
ONE(1),
TWO(2),
THREE(3),
FOUR(4),
FIVE(5);
public final int quantity;
UnitEnum(int q) {
this.quantity = q;
}
public int getQuantity() { return this.quantity; }
}
这里有一点关于
对于您的问题,我会选择如下方式:
//Your enum
public enum UnitEnum{ONE, TWO, THREE, FOUR, FIVE};
//Using your enum
myENUM = 1; //compilation error
myENUM = UnitEnum.ONE // works
这里有一点关于
对于您的问题,我会选择如下方式:
//Your enum
public enum UnitEnum{ONE, TWO, THREE, FOUR, FIVE};
//Using your enum
myENUM = 1; //compilation error
myENUM = UnitEnum.ONE // works
enum CheeseNuggets{X6,X9}
?可能不使用枚举,而是使用类包装int[]
public class Ints {
public final int[] values;
public Ints(int... values) {
this.values = Arrays.copyOf(values, values.length);
}
}
enum CheeseNuggets{X6,X9}
?可能不使用枚举,而是使用类包装int[]
public class Ints {
public final int[] values;
public Ints(int... values) {
this.values = Arrays.copyOf(values, values.length);
}
}
不,没有。名称必须以字符、
$
或\uu
开头。问题是:为什么不写它们:1
,2
,…?这只是为了节省时间:p看,1,2,3等等。需要输入这么多字母。你必须使用枚举吗?为什么不Collections.unmodifiableSet(新树集(Arrays.asList(1,2,5)))
?不,没有。名称必须以字符、$
或\uu
开头。问题是:为什么不写它们:1
,2
,…?这只是为了节省时间:p看,1,2,3等等。需要输入这么多字母。你必须使用枚举吗?为什么不Collections.unmodifiableSet(新树集(Arrays.asList(1,2,5))
?并在组合框中显示数量private UnitEnum(intq){quantity=q;}
。它说枚举UnitEnum中的构造函数UnitEnum不能应用于给定的类型。必需:未找到参数:int原因:实际参数列表和形式参数列表长度不同。为什么不在此处使用ordinal()
,而不是定义字段quantity
?并在组合框中显示数量private UnitEnum(intq){quantity=q;}
。它说枚举UnitEnum中的构造函数UnitEnum不能应用于给定的类型。必需:未找到参数:int原因:实际参数列表和形式参数列表的长度不同。为什么不在此处使用ordinal()
,而不是定义字段quantity
?