[英]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.