java - Java中带有fillArray()方法的二维数组
问题描述
我对编码还是很陌生,所以我提前道歉。但我正在使用二维数组,似乎无法弄清楚。我已经完成了第一部分,但我不知道如何编写方法 (fillArray())(当我在第 9 行调用它时,它说它是未定义的,但我不知道如何通过编写方法来解决这个问题) .
这是我到目前为止所拥有的:
public class 2DArrays {
public static void main(String[] args) {
2DArrays 2D = new 2dArrays();
int[][] arr = 2D.fillArray();
for (int i = 0; i < arr.length; i++)
{
for (int j = 0; j < arr[i].length; j++) {
String str = "";
if (arr[i][j] < 0) {
str = "" + arr[i][j];
}
else {
str = " " + arr[i][j];
}
System.out.print(" " + str);
}
System.out.println();
}
}
}
解决方案
fillArray 将行和列作为参数。
public static int[][] fillArray(int rows, int cols) {
int[][] arr = new int[rows][cols];
for (int r = 0; r < rows; r++) {
for (int c = 0; c < cols; c++) {
arr[r][c] = r-c + 1;
}
}
return arr;
}
int[][] arr = fillArray(5,10);
一种简单且格式化的显示方式是
for (int[] r : arr) {
for(int i : r) {
System.out.printf("%3d",i);
}
System.out.println();
}
印刷
1 0 -1 -2 -3 -4 -5 -6 -7 -8
2 1 0 -1 -2 -3 -4 -5 -6 -7
3 2 1 0 -1 -2 -3 -4 -5 -6
4 3 2 1 0 -1 -2 -3 -4 -5
5 4 3 2 1 0 -1 -2 -3 -4
推荐阅读
- c# - 单击注销按钮时无法到达控制器/操作
- javascript - 有没有办法在不同的滚动点更改不同的图像?
- jquery - 如何使用 JQuery 和 Ajax 将一维数组传递给 php 页面?
- php - 以 Laravel 形式创建对象数组
- keycloak - Keycloak API execute-actions-email 发送 http 电子邮件
- php - 如何在不更改所有者或组的情况下创建或编辑不由 www-data 拥有或分组的文件?
- angular - HTML 显示 ID 而不是名称
- api - 已超出 Youtube 数据 API 配额
- python - 带有整个 df 的布尔索引
- javascript - 如何使用 MongoClient 而无需每次都编写“client.close()”?