Я делаю метод, который печатает строки в файле, содержащие определенное слово. Если параметр представляет собой пустую строку, предполагается, что будет напечатан весь файл.
У меня первая часть работает. Все в инструкции "else" отлично работает; он сканирует каждую строку и печатает строки, содержащие слово в параметре.
НО я не могу заставить его распечатать весь файл, когда в качестве параметра "слово" вводится пустая строка (""). Я не уверен, почему это так.
public void printLinesWhichContain(String word) {
while (this.reader.hasNextLine()) {
String line = this.reader.nextLine();
if (word.isEmpty()) {
System.out.println(line);
} else {
Scanner lineReader = new Scanner(line);
while (lineReader.hasNext()) {
if (lineReader.next().equals(word)) {
System.out.println(line);
}
}
}
}
}
"".equals(word)
.. - person GoldRoger   schedule 24.04.2014""
в качестве аргумента. Можете ли вы показать нам, как вы его используете? - person Pshemo   schedule 24.04.2014if(line.contains(word)) System.out.println(line);
, в противном случае остальная часть вашего кода в порядке. - person Basim Khajwal   schedule 24.04.2014