枚举值的Java数组

枚举值的Java数组,java,arrays,enums,Java,Arrays,Enums,计算机定义为公共枚举计算机{…} \u机器定义为专用机器[]\u机器 不知道为什么这不起作用: _machines = {Machine.a, Machine.b}; 错误消息: 表达式的开头非法 谢谢你们 您缺少数组声明的一小部分 _machines = new Machine[]{Machine.a, Machine.b}; 如果您给它一个大小,它也可以首先声明为空 _machines = new Machine[size]; 工作非常感谢您的快速回复。Machine.a,Machin

计算机定义为
公共枚举计算机{…}

\u机器
定义为
专用机器[]\u机器

不知道为什么这不起作用:

_machines = {Machine.a, Machine.b};
错误消息:

表达式的开头非法


谢谢你们

您缺少数组声明的一小部分

_machines = new Machine[]{Machine.a, Machine.b};

如果您给它一个大小,它也可以首先声明为空

_machines = new Machine[size];

工作非常感谢您的快速回复。
Machine.a,Machine.b
可以简化为
a,b
。前缀是多余的,因为计算机枚举数组只能包含计算机枚举。@取消此操作无效。我需要做些什么来实现这一点吗?我不想每次都写“Machine”。@PulkitAgarwal看看静态导入。我怎么找不到此数组上某个枚举的位置_machines.indexOf(Machine.a)不起作用:(类似:您可能希望查看一个。注意,这与OP的情况不同。这使用空值初始化数组,而OP要求使用预定义的非空值初始化数组。