我已经创建了一个处理2.2.1的项目,并且使用了一个枚举。但是,我将我的枚举命名为Colour.java,却出现了一个错误:
Syntax error on token "{", @ expected after this token.
这是我的代码:
public enum Colour
{ // --> on this line
RED({0xFF0000, 0xDD0000, 0x990000, 0x660000, 0x330000}),
GREEN({0x00FF00, 0x00DD00, 0x009900, 0x006600, 0x003300}),
BLUE({0x0000FF, 0x0000DD, 0x000099, 0x000066, 0x000033});
private final int[] shades;
public Colour(int[] shades)
{
this.shades = shades;
}
public int[] getShades()
{
return shades;
}
}
最佳答案
创建新的int数组的语法需要以new int[]
开头:
RED(new int[] {0xFF0000, 0xDD0000, 0x990000, 0x660000, 0x330000}),
// ^^^^^^^^^
唯一可以忽略的是在声明变量的同时初始化变量或字段:
int[] ints = { 1, 2, 3 };
之后,您需要将构造函数的可见性从public减小到package-private或private,然后一切正常。
关于enums - token “{”,@应该在枚举中此 token 之后用于处理2.2.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36746418/