Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ';变量';无法解析为变量_Java_Arrays_Methods_Compiler Errors - Fatal编程技术网

Java ';变量';无法解析为变量

Java ';变量';无法解析为变量,java,arrays,methods,compiler-errors,Java,Arrays,Methods,Compiler Errors,我正在使用Eclipse,出现以下错误: 无法将席位解析为变量 这是我的节目: import java.util.*; class Project { public static void printRow(char[] row) { for (char i : row) { System.out.print(i); System.out.print("\t"); } System.out

我正在使用Eclipse,出现以下错误:

无法将席位解析为变量

这是我的节目:

import java.util.*;

class Project {

    public static void printRow(char[] row) {
        for (char i : row) {
            System.out.print(i);
            System.out.print("\t");
        }
        System.out.println();
    }

    public static void method1 (char[][]seats){
        seats = new char [15][4];
        int i,j;
        char k = 'O';
        for(i=0;i<15;i++) {
            for(j=0;j<4;j++) {
                seats[i][j]=k;
            }
        }

        for(char[] row : seats) {
            printRow(row);
        }
我省略了不相关的代码,Eclipse mark
method1(seats)
,但我不知道如何修复它


编辑:我为座位使用一个参数,因为我需要在其他方法中使用。

编辑:正如您在评论中所说,您需要在代码中的其他地方重用座位

因此,我建议您采取以下措施:

private char[][] makeSeats() {
    char[][] seats = new char[15][4];
    for(int i=0; i<15; i++) {
        for(int j=0; j<4; j++) {
            seats[i][j] = 'O';
        }
    }
    return seats;
}        

public static void method1(char[][] seats) {
    for(char[] row : seats) {
        printRow(row);
    }
}

public static void printRow(char[] row) {
    for (char i : row) {
        System.out.print(i);
        System.out.print("\t");
    }
    System.out.println();
}

public static void main(String[] args) {
    char[][] seats = makeSeats();
    method1(seats);
} 

例如,在main中定义一个
seats
变量。在
main
方法中,没有定义
seats
。它可能是数据成员吗?是打字错误还是您没有在main中定义“seats”?为什么
seats
method1
的参数?它会立即被覆盖。我需要在其他方法中使用变量'seats',这就是我使用参数的原因,谢谢你的回答。看看你原来的代码,我觉得没必要。我会做一些调整。
private char[][] makeSeats() {
    char[][] seats = new char[15][4];
    for(int i=0; i<15; i++) {
        for(int j=0; j<4; j++) {
            seats[i][j] = 'O';
        }
    }
    return seats;
}        

public static void method1(char[][] seats) {
    for(char[] row : seats) {
        printRow(row);
    }
}

public static void printRow(char[] row) {
    for (char i : row) {
        System.out.print(i);
        System.out.print("\t");
    }
    System.out.println();
}

public static void main(String[] args) {
    char[][] seats = makeSeats();
    method1(seats);
} 
public static void method1() {
    char[][] seats = new char[15][4];
    int i, j;
    char k = 'O';
    for(i=0; i<15; i++) {
        for(j=0; j<4; j++) {
            seats[i][j]=k;
        }
    }
    for(char[] row : seats) {
        printRow(row);
    }
}

public static void main(String[] args) {
    method1();
}