java怎么在类的方法中给该类的成员变量二维数组赋值?

譬如在public class A里定义一个二维数组:
private int a[][] = new int[10][10];
然后该类有一个方法:
public void fun()
{
//可以给二维数组a在这里赋值么?
a = {{2,2,2},{3,3,4}};//这样写会报错! 应该怎么写呢?
}
最新回答
上帝的女孩

2024-09-02 03:21:26

private int a[][] = new int[10][10];
然后该类有一个方法:
public void fun()
{
//可以给二维数组a在这里赋值么?
a = {{2,2,2},{3,3,4}};//这样写会报错! 应该怎么写呢?
}
在方法里给成员变量赋值是可以的,但必须是动态初始化,题目中在方法中的赋值方式是静态的初始化数组方式,所以出错,静态的初始化只能在定义时来做。
private int a[][] = {{2,2,2},{3,3,4}};//静态初始化只能在定义时进行。
动态的初始化如下:
private int a[][] = new int[10][10];
public void fun()
{
for(int i=0;i<a.length;i++){
for(int j=0;j<a[i].length;j++){
a[i][j]=i*j;//给数组动态初始化
}
}}
又不懂得再问,长期在线···
追问
啊 这样么
可是如果我要赋值的二维数组数字没什么规律的,
譬如一个0,1迷宫矩阵,那就没法弄个函数手动输入赋值一下么?
呃,讨厌的java >_<!!!
追答
哎,没得办法,这是事实,老师说过,通过测试你也该知道的,没规律的数组初始化只能静态初始化···
逐风

2024-09-02 07:37:22

a[i][j]=一个数
i和j是改变的 但要在10范围之内

public class a{
public static void main(String args[]){
int a[][] = new int[10][10];
for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
a[i][j]=(int)(Math.random()*100);
System.out.print(a[i][j]+" ");

}
}
}
}