Java静态数组

Java静态数组,java,Java,我有一个名为User的类,我想为它创建一个多维数组 我写过 static User [][] userlist=new User[6][]; 我有一个编译器错误: 表达式的非法开始 非常感谢。以下是5x5二维阵列的示例: private static int[][] matrix = new int[5][5]; //set index 1, 2 to 5 matrix[1][2] = 5; 静态部分真的没有什么区别;只需将成员声明为静态。与@Mark solution类似,您可以初始化多

我有一个名为User的类,我想为它创建一个多维数组 我写过

static User [][] userlist=new User[6][];
我有一个编译器错误: 表达式的非法开始


非常感谢。

以下是5x5二维阵列的示例:

private static int[][] matrix = new int[5][5];

//set index 1, 2 to 5
matrix[1][2] = 5;

静态部分真的没有什么区别;只需将成员声明为静态。

与@Mark solution类似,您可以初始化多维数组

static int[][] arr = new int[2][4] ;
arr[0][0]=1;
arr[0][1]=2;
.
.
arr[0][3]=4;
private static int[][] matrix = {
    { 1,2,3,4,5 },
    { 6,7,8,9,10 }
};

有许多很好的答案,因此这比任何东西都更能提供信息:

问题是所有维度都必须显式或隐式指定,而新的X[..][..][..][..]等显式指定维度表单要求每个维度。。是一个非负整数表达式。javac编译器正在抛出该错误,因为它找到了最后一个]但需要一个整数表达式

new User[6][/*you need an integer expression here*/];

愉快的编码。

我认为这不算多重编码dimensional@Woot4Moo,oops:更新了代码,你去吧,我根据删除了我的否决票请在发布问题时使用正确的大写字母。您单击您认为正确的答案旁边的概述复选框。@Ruba:关于您得到的编译错误:我猜您试图将该声明放入方法中。static关键字仅应用于成员变量,以指示它们由类的所有实例共享,而不仅仅是类本身。因此,它必须在任何方法之外。如果这不是你遇到的问题,你需要发布更多的上下文。是的,没错,声明在一个方法中。谢谢你。哦,谢谢你的拼写错误修复。我已经尝试过了。。。但它没用…@鲁巴:你能提供比它没用更多的细节吗?很高兴看到您找到了“接受答案”按钮;虽然现在回答这个问题还为时过早:-。看看你过去的问题,并考虑接受答案:我有用户类…我想为这个类创建一个多维数组。所以我写了:静态用户[][]用户列表=新用户[6][];我有一个编译错误,编译错误是什么?如果很难在评论中显示,您可能希望将其编辑到您的问题中。