Как прочитать заранее определенное количество строк из входных данных сканера на основе нескольких условий для входной строки - PullRequest
0 голосов
/ 27 ноября 2018

Мне нужно прочитать максимум 10 строк, в каждой строке только символы * и.также с другими условиями, такими как начинаются с * и длиной 10. Последняя строка, которая должна быть прочитана, должна иметь строку, следующую за ней со словом END.Я хочу знать, есть ли лучший способ решить это, чем ниже.Если я могу проверить все условия в цикле while

  Scanner keyboard = new Scanner(System.in);
    int countLine = 0;
    String line = "";
    while (countLine < 10) {
        line = keyboard.nextLine();
        countLine++;
        if (line.matches("[*.]+") && !line.equals("END") && line.startsWith("*") && line.length() < 10
               ) {
          // do something
        } else {
            break;
        }
    }
    keyboard.close();

1 Ответ

0 голосов
/ 27 ноября 2018

Один из способов сделать это:

  1. прочитать весь документ в вашем приложении.
  2. разбирать каждый (строку / столбец) в arrayLists (поэтому первые 10 строк документа)
  3. выполнять необходимые вычисления (все еще в цикле while).
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...