Java 如何从控制台读取n个数字行?

Java 如何从控制台读取n个数字行?,java,java.util.scanner,Java,Java.util.scanner,从控制台读取所有行并存储在集合中。在此上下文中,如何使用scanner的方法。用户可以输入的行数未知。请尝试以下操作: Scanner reader = new Scanner(System.in); List<String> a = new ArrayList<>(); while (reader.hasNextLine()) { String s = reader.nextLine(); if (s.equals("!q

从控制台读取所有行并存储在集合中。在此上下文中,如何使用scanner的方法。用户可以输入的行数未知。

请尝试以下操作:

Scanner reader = new Scanner(System.in);
    List<String> a = new ArrayList<>();
    while (reader.hasNextLine()) {
        String s = reader.nextLine();
        if (s.equals("!q")) {
            break;
        }
        a.add(s);
    }
import java.util.*;  
public class ScannerClassExample1 {    
      public static void main(String args[]){                       
          String s = "Hello, This is JavaTpoint.";  
          //Create scanner Object and pass string in it  
          Scanner scan = new Scanner(s);  
          //Check if the scanner has a token  
          System.out.println("Boolean Result: " + scan.hasNext());  
          //Print the string  
          System.out.println("String: " +scan.nextLine());  
          scan.close();           
          System.out.println("--------Enter Your Details-------- ");  
          Scanner in = new Scanner(System.in);  
          System.out.print("Enter your name: ");    
          String name = in.next();   
          System.out.println("Name: " + name);           
          System.out.print("Enter your age: ");  
          int i = in.nextInt();  
          System.out.println("Age: " + i);  
          System.out.print("Enter your salary: ");  
          double d = in.nextDouble();  
          System.out.println("Salary: " + d);         
          in.close();           
          }    
}  
Scanner reader=新的扫描仪(System.in);
列表a=新的ArrayList();
while(reader.hasNextLine()){
字符串s=reader.nextLine();
如果(s等于(“!q”)){
打破
}
a、 添加(s);
}
您可以尝试以下方法:

import java.util.*;  
public class ScannerClassExample1 {    
      public static void main(String args[]){                       
          String s = "Hello, This is JavaTpoint.";  
          //Create scanner Object and pass string in it  
          Scanner scan = new Scanner(s);  
          //Check if the scanner has a token  
          System.out.println("Boolean Result: " + scan.hasNext());  
          //Print the string  
          System.out.println("String: " +scan.nextLine());  
          scan.close();           
          System.out.println("--------Enter Your Details-------- ");  
          Scanner in = new Scanner(System.in);  
          System.out.print("Enter your name: ");    
          String name = in.next();   
          System.out.println("Name: " + name);           
          System.out.print("Enter your age: ");  
          int i = in.nextInt();  
          System.out.println("Age: " + i);  
          System.out.print("Enter your salary: ");  
          double d = in.nextDouble();  
          System.out.println("Salary: " + d);         
          in.close();           
          }    
}  
输出将如下所示:

Boolean Result: true
String: Hello, This is JavaTpoint.
-------Enter Your Details--------- 
Enter your name: Abhishek
Name: Abhishek
Enter your age: 23
Age: 23
Enter your salary: 25000
Salary: 25000.0

到现在为止你都试了些什么?谢谢,但我想不断地循环。我得到了解决方案。谢谢你的澄清,但我们需要设置一个或另一个条件来打破循环,对吗?我已经编辑了我的回答,现在如果你想退出循环,只需要在新行中写“!q”。