Добавление всех неправильных ответов в массив с помощью Java - как? - PullRequest
0 голосов
/ 07 декабря 2011

Я хочу взять все вопросы, на которые были даны неправильные ответы (это простая программа, задающая математические вопросы), и если они ошиблись, добавьте номер вопроса в массив для дальнейшего использования.

Но я не знаю, как долго будет длиться этот массив, теоретически он может иметь разную длину при каждом запуске программы. Так как мне настроить массив?

Ответы [ 5 ]

2 голосов
/ 07 декабря 2011

Вместо этого следует использовать ArrayList.

Вы можете сделать что-то вроде:

ArrayList<String> wrongAnswers = new ArrayList<String>();

// Call this function with the user's answer as a parameter, when the answer
// has been determined to be incorrect.
public void wrongAnswer(String answer) {
    wrongAnswers.add(answer);
}

public void printWrongAnswers() {
    System.out.println("Wrong answers:");
    for (String answer : wrongAnswers) {
        System.out.println(answer);
    }
}
1 голос
/ 07 декабря 2011

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

1 голос
/ 07 декабря 2011

Начните с ArrayList , а затем вы можете вызвать toArray () , чтобы получить реальный массив.

Вы также можете инициализировать массив, размер которого равен числувопросов у вас есть.Затем продолжайте отсчет пропущенных вопросов и просто обрежьте массив в конце.

1 голос
/ 07 декабря 2011

Изучите использование ArrayList.Это реализация интерфейса List, который поддерживается массивом.

Используя конструктор по умолчанию, он будет начинаться с резервного массива размером 10 (но не волнуйтесьслишком много об этой детали):

List<Question> questionList = new ArrayList<Question>();

Затем вы можете добавить элементы:

questionList.add(question);

Затем он будет изменять размер этого массива по мере необходимости, пока вы продолжаете добавлять элементы.

0 голосов
/ 07 декабря 2011

Используйте коллекцию, например, реализацию List (например, ArrayList ), вместо массива. Тогда вы можете добавить, позвонив по номеру list.add(miss) и не задумываясь о размере.

Вам специально нужен массив? Вы можете получить массив, но в общем случае он редко нужен для таких требований.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...