好的,所以我需要从1到15的每一行打印10行,从1到10行和15列,在数字之间用数字排成一行。第二个子程序自己运行,但只打印0,第一个子程序是我试图给行和列赋值,但我知道我做错了。任何帮助表示赞赏
static int ROWS = 10;
static int COLUMNS = 15;
static int[][] myArray = new int[10][15];
static int i; // loops through the number of rows
static int j; // loops through the number of columns
static int num1 = 0;
static int num2 = 0;
public static void vlueArray() {
for (i = 1; i < ROWS; i++) {
myArray[i][j]= num1++;
for (j = 1; j < COLUMNS; j++) {
myArray[i][j] = num2++;
System.out.print(myArray[i][j]);
}
System.out.println("");
}
}
public static void display2DArray() {
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLUMNS; j++) {
System.out.print(myArray[i][j] + " | ");
}
System.out.println("");
System.out.println("_____________________________________________________________");
}
}
答案 0 :(得分:0)
你没有初始化数组中的元素,这就是你显示零的原因,因为即使你没有初始化它们,int值总是由编译器初始化。 int的默认值为0。
像这样初始化你的2D数组:
int[][] myArray = new int[10][15]{{2,3},{3,5},..........};
希望这有帮助。
答案 1 :(得分:0)
这里有两个问题。首先,你没有很好的语法,虽然你设置的方式确实有效,但是让我给你一些关于设置的提示,然后我们可以很容易地解决你的问题。
这里有一些一般规则:
ROW
和COLUMN
声明您的数组,它有助于确保数组长度值始终相同。vlueArray
中创建值的循环不正确。我将向您展示一些正确的格式,以便将这些值放在下面。 现在,您似乎想在10个不同的行上只有1到15个。要做到这一点,你只需要一个变量,所以我的响应代码只有一个变量,但如果这不是你想要的,我很乐意帮助你得到一个不同的设置。
现在您已经掌握了一些背景信息,让我们为您提供一些有用的代码。
static int ROWS = 10; //Your row count.
static int COLUMNS = 15; //Your column count.
static int num = 0; //Our number.
//Using the constants to make sure rows and columns values match everywhere.
static int[][] myArray = new int[ROWS][COLUMNS];
public static void fillArray() {
//Initializing the loop variables in the loop is the common practice.
//Also, since the first index is zero, the loop needs to start at 0, not 1.
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLUMNS; j++) {
//If you want 0 - 14, use `num++`.
//If you want 1-15, use `++num`.
myArray[i][j] = num++;
}
num = 0; //This sets num back to zero after cycling through a whole row.
}
//Your display method works just fine.
public static void display2DArray() {
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLUMNS; j++) {
System.out.print(myArray[i][j] + " | ");
}
System.out.println("");
System.out.println("_____________________________________________________________");
}