2015-10-28 1 views
1
public static void main(String[] args) { 
     BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); 
     int charCount = 0; 
     int wordCount = 0; 
     int lineCount = 0; 

     String line; 
     try { 
      while((line = in.readLine()) != null) { 
       System.out.println(line); 
       lineCount++; 
       charCount += line.length(); 
       String[] words = line.split("\\W"); 
       wordCount += words.length; 
      } 
      System.out.println("charCount = " + charCount); 
      System.out.println("wordCount = " + wordCount); 
      System.out.println("lineCount = " + lineCount); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 

Прямо к точке: Как выйти из вышеперечисленного while-loop? Я прочитал еще один вопрос, который readLine() возвращает null, когда больше нет строки для чтения, но как это сделать с помощью консоли Eclipse?Как предоставить null для метода readLine() для BufferedReader с использованием Eclipse

Единственный способ, которым я могу управлять, чтобы разорвать петлю, чтобы добавить в случаях, таких как

if(line.length() == 2 || line.equals("exit"))) 
    break; 
+1

Вы пробовали Ctrl-Z или Ctrl-D? – RealSkeptic

+0

Вы также можете использовать класс Scanner для чтения ввода из Eclipse IDE. – Ankit

+0

Я должен исправить себя. Кажется, это не работает. До этого он, вероятно, вышел из-за того, что я ввел строку длиной 2. – Beko

ответ

0

если вы просто хотите, чтобы прочитать строку, зачем вам это нужно во время цикла? , или если вы хотите, чтобы несколько входов были приняты, вы должны указать, сколько входов должно быть выполнено в первом readline(); в противном случае я надеюсь, что ниже код будет решить ваш вопрос :)

общественного класса TestRandomArray {

public static void main(String[] args) { 
    BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); 
    int charCount = 0; 
    int wordCount = 0; 
    int lineCount = 0; 

      try { 
      String line = in.readLine(); 
      lineCount++; 
      charCount += line.length(); 
      String[] words = line.split(" "); 
      wordCount += words.length; 
      System.out.println("charCount = " + charCount); 
      System.out.println("wordCount = " + wordCount); 
      System.out.println("lineCount = " + lineCount); 
     in.close(); 
       } catch (IOException e) { 
     e.printStackTrace(); 
    } 
} 

}

+0

Эй, полностью забыл ответить на ваш ответ, извините. Ну, я не хотел входить только в одну строку. Я хотел знать, как я могу доставить «null» readLine() с помощью командной строки Eclipse. – Beko