2016-03-22 12 views
1

Konsoldan birden çok satır yüklemek istiyorum. Metni konsola yapıştırıyorum, bu metnin daha fazla satırı var. Son satır yüklenmek istemiyor, çünkü eksik \ n. Konsolu \ n ekleyemiyorum, çünkü yapıştırdığımda hemen çalışır. Başka bir konu ise de bitmek istemiyor. Son çizgiden beklenen her şeyi yükler ve bitmez.Java'daki konsoldan çoklu satır oku, son satırla ilgili sorun

 Scanner input = new Scanner(System.in); 
     List<String> lines = new ArrayList<String>(); 
     String lineNew; 

     while (input.hasNextLine()) { 
      lineNew = input.nextLine(); 
      System.out.println(lineNew); 
      lines.add(lineNew);   
     } 
+1

Bunu yapmak için 'return' düğmesine bastığınızda son satırı yükler. – Tom

cevap

0

Girişiniz çok kısa ve eğer evet ise, bir onay olup olmadığını kontrol edebilirsiniz.

import java.util.ArrayList; 
import java.util.List; 
import java.util.Scanner; 

public class Lines { 
    public static void main(String[] args) { 

     Scanner input = new Scanner(System.in); 
     List<String> lines = new ArrayList<String>(); 
     String lineNew; 

     while (input.hasNextLine()) { 
      lineNew = input.nextLine(); 
      if (lineNew.isEmpty()) { 
       break; 
      } 
      System.out.println(lineNew); 
      lines.add(lineNew); 
     } 

     System.out.println("Content of List<String> lines:"); 
     for (String string : lines) { 
      System.out.println(string); 
     } 
    } 
} 
+1

Katılıyorum, 'isEmpty()' daha iyi. Cevabımı buna göre değiştirdim. – PendingValue

+0

"Girişiniz çok kısa ve eğer evet ise," ile ne demek istediğinizi açıklayabilir misiniz? Sanırım fesih koşulu olarak boş bir çizgi kullanmanız gerekiyordu, fakat bu bu cümleden çok da net değil :). – Tom

-2

Sonlandırmak için ctrl + z (ctrl + d) tuşlarına basmalısınız.