2012-05-25 49 views
6

我想在java中动态执行此操作。我知道如何在单维数组中插入值。我有点困惑于二维数组。如何以编程方式在二维数组中插入值?

static final String shades[][] = { 


// Shades of grey 
    { 
    "lightgrey", 
    "dimgray", 
    "sgi gray 92", 
    }, 
// Shades of blue 
    { 
    "dodgerblue 2", 
    "steelblue 2", 
    "powderblue", 
    }, 
// Shades of yellow 
    { 
    "yellow 1", 
    "gold 1", 
    "darkgoldenrod 1", 
    }, 
// Shades of red 
    { 
    "indianred 1", 
    "firebrick 1", 
    "maroon", 
    } 
}; 

回答

7
String[][] shades = new String[intSize][intSize]; 
// print array in rectangular form 
for (int r=0; r<shades.length; r++) { 
    for (int c=0; c<shades[r].length; c++) { 
     shades[r][c]="hello";//your value 
    } 
} 
3
String[][] shades = new String[4][3]; 
for(int i = 0; i <= 4; i++) 
    { 
     for(int y = 0; y <= 3; y++) 
     { 
     shades[i][y] = value; 
     } 
    } 

这应该工作

1

你不能 “加” 值数组作为数组的长度是不变的。您可以在特定阵列位置设置值。如果你知道如何用一维数组来做它,那么你就知道如何用n维数组来做它:在Java中没有n维数组,只有数组的数组...(数组...) 。

但是你可以链接索引操作符来访问数组元素。

String[][] x = new String[2][]; 
x[0] = new String[1]; 
x[1] = new String[2]; 

x[0][0] = "a1"; 
    // No x[0][1] available 
x[1][0] = "b1"; 
x[1][1] = "b2"; 

注意子阵列的尺寸不需要匹配。

0

认为它是数组的数组。

如果你这样做str [x] [y],那么就有长度为x的数组,其中每个元素又包含长度为y的数组。在Java中,第二维没有必要具有相同的长度。 因此,对于X = I,你可以有Y = M和X = j的,你可以有:Y = N

对于这个您的声明看起来像

的String [] []测试=新的String [4] [] ; test [0] = new String [3]; test [1] = new String [2];

等。

-1

this is output of this program

Scanner s=new Scanner (System.in); 
int row, elem, col; 

Systm.out.println("Enter Element to insert"); 
elem = s.nextInt(); 
System.out.println("Enter row"); 
row=s.nextInt(); 
System.out.println("Enter row"); 
col=s.nextInt(); 
for (int c=row-1; c < row; c++) 
{ 
    for (d = col-1 ; d < col ; d++) 
     array[c][d] = elem; 
} 
for(c = 0; c < size; c++) 
{ 
    for (d = 0 ; d < size ; d++) 
     System.out.print(array[c] [d] +" "); 
    System.out.println(); 
} 
+0

欢迎,你应该解释一下什么是这个答案有趣。但是,当然,由于“int c = row -1”而不是“int c = 0”(对于'd'而言),您只会将'elem'插入到最后一个单元格中。 – AxelH

+0

你的“方形阵列”上来自“size”来自哪里? – AxelH