我在代码 cols = input [0] .length(); 的这一部分中有一些遗嘱我告诉我 1)不能调用int的原始类型的长度 2)长度无法解决或不是字段。 我正在为扫雷游戏提供代码,在这里我想用我的文件中的索引填充网格。
public static void main(String[] args) {
Scanner file = new Scanner ("in.txt");
int line=0;
int m = file.nextInt();
int n = file.nextInt();
int index = file.nextInt();
int [][] input = new int[m][n];
String.valueOf(input);
for (int [] field : input) {
printMineField(field);
}
file.close();
line= line++;
}
private static void printMineField(int[] input) {
int rows = input.length, cols = input[0].length ;
int[][] grid = new int[rows][cols];
for (int i = 0; i < rows; i++) {
Arrays.fill(grid[i], 0);
}
//
}
答案 0 :(得分:1)
首先length
是数组中的字段,而不是函数。所以你应该使用cols = input[0].length;
- 删除那些括号。
接下来,您将一维数组传递给您的方法。你应该传递一个二维数组。
替换
private static void printMineField(int[] input)
使用:
private static void printMineField(int[][] input)
然后你还需要替换
for (int [] field : input) {
printMineField(field);
}
使用:
printMineField(input);