繁体   English   中英

如何在 java 中使用扫描仪仅接受来自用户输入的特定行数

[英]How can I accept only a specific number of lines from user input using scanner in java

我正在处理一个任务,我专门从用户那里接受 8 行文本并将每个单词打印在自己的行上,我正在努力保持行数并且只在用户输入恰好是 8 行时才打印单词. 这是我到目前为止所拥有的

class EightLines{
    public static void main(String[] args){
        System.out.println("Enter 8 lines:");
        Scanner input = new Scanner(System.in);
        
        
        
        
        while (input.hasNextLine()){
        String line = input.nextLine();
        printwords(line);}
        }
        
    
  public static void printwords(String line) {     
            


                //String line = input.nextLine();
                line = line.trim();
                String[] arrofwords = line.split("[;:,.!?' ']");
                for (int j=0;j<arrofwords.length;j++){
                    String word = arrofwords[j];
                   if (word == " "){System.out.print("");}
                    
                    else{
                    System.out.println(arrofwords[j]);}
                }
            
          
        }
    
}```

您可以使用大小为 8 的数组来存储输入行,然后打印它们的单词。

final int LIMIT =8;
String [] arr = new String[LIMIT];

// Input
for (int i = 0; i < LIMIT; i++) {
    arr[i] = input.nextLine();
}

// Print
for (int i = 0; i < LIMIT; i++) {
    printwords(arr[i]);
}

// Alternatively, you can use a for-each loop to process elements
/*
for (String str: arr) {
    printwords(str);
}
*/

如果希望输入和打印一起处理,则不需要数组。

for (int i = 0; i < 8; i++) {
    String line = input.nextLine();
    printwords(line);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM