-3

Eclipse は、以下のコードの最後の行で、「式の型は配列型でなければなりませんが、シアターに解決されました」(2D 配列用に作成したオブジェクトのクラス) と言っています。具体的にはここ --> a[row]

これは、私が Java クラスで取り組んでいる大きなプロジェクトのほんの一部です。ご存知かもしれませんが、2D 配列を使用して劇場の座席表を印刷して実装する必要があります。価格による検索、座席による検索などのメソッドを作成する必要があります。現在、2D 配列を初期化し、値を入れて出力しようとしています。どんな助けでも大歓迎です。

public class Theater {
//int[][] x = new int[9][10];   
int y[][];

    public Theater(){
        //Initialize array
        for (int row = 0; row < 3; row++)
            for (int column = 0; column < 10; column++)
                y[row][column] = 10;
    }

    public static void main(String[] args){
        Theater a = new Theater();

        for(int i = 0; i < 3; i++)
            for (int row = 0; row < 9; row++)
                for (int column = 0; column < 10; column++)
                    System.out.println(a[row][column]);
4

1 に答える 1

0

演算子は、配列である式に適用する[]必要があります。Theaterは配列ではないため、コンパイル時にエラーが発生します。おそらく、インスタンスのyフィールドにアクセスしたかったでしょう:Theater

...
System.out.println(a.y[row][column]);

yさらに、使用する前に配列を作成する必要があります。

public Theater(){
    this.y = new int[9][10];
    ...

そうしNullPointerExceptionないと、配列に書き込もうとするとエラーが発生します ( y[row][column] = 10;)。

于 2016-07-28T22:08:45.380 に答える