Вставка пользовательского ввода в двумерный массив - PullRequest
1 голос
/ 17 апреля 2019

Мой учитель хочет, чтобы я написал код, который спрашивает пользователей о количестве нужных им строк и столбцов, а затем использует эти входные данные для создания двумерного массива. Но каждый раз, когда я пытаюсь поместить переменную в скобки строк и столбцов, я получаю эту ошибку для строки 17:

"Выражение должно быть типом массива, но оно разрешено в класс"

package Theatre;

import java.util.Scanner;

public class BoxOffice {

    public static void main(String[] args) {

        Scanner input = new Scanner(System.in); 

        System.out.print("How many rows do you want in your Theatre");
        int r = input.nextInt(); input.nextLine();
        System.out.print("How many Columns do you want in your Theatre");
        int c = input.nextInt(); input.nextLine();
        System.out.printf("You want %d rows and %d columns in your Theatre", r, c);
        int [] [] seat = int [r] [c];  // <-- line 17

Я ожидал, что в строке 17 будет создан двумерный массив со строками, которые пользователь хотел получить переменной r в скобках строк, и столбцами в скобках столбцов, но я получаю ошибку.

Ответы [ 2 ]

0 голосов
/ 17 апреля 2019

Вход для сканера = новый сканер (System.in);

    System.out.print("How many rows do you want in your Theatre");
    int r = input.nextInt(); input.nextLine();
    System.out.print("How many Columns do you want in your Theatre");
    int c = input.nextInt(); input.nextLine();
    System.out.printf("You want %d rows and %d columns in your Theatre", r, c);


    int [] [] seat = new int [r] [c];

Вы забыли добавить новое ключевое слово в объявление массива.

0 голосов
/ 17 апреля 2019

Ключевое слово new - это то, что вам нужно использовать для создания нового экземпляра чего-либо, включая массив.

int [] [] seat = new int [r] [c];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...