为什么扫描仪不接受另一个字符串的输入并跳过它?我无法理解,这是我的代码:
import java.util.Scanner;
public class demo {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String name;
String address;
int age;
System.out.println("Enter your name");
name = s.nextLine();
System.out.println("My name is :" + name);
System.out.println("Enter your age");
age = s.nextInt();
System.out.println("My age is :" + age);
System.out.println("Enter your address");
address = s.nextLine();
System.out.println("My address is :" + address);
}
}
输出:
Enter your name
dk
My name is :dk
Enter your age
22
My age is :22
Enter your address
My address is :
最佳答案
很简单。您可以在 age = s.nextInt()
;
s.nextLine();
Scanner 提供了方法 nextInt()
来请求用户输入,并且不消耗最后一个换行符 (\n
)。
System.out.println("Enter your age");
age = s.nextInt();
s.nextLine(); // consumes the \n character
System.out.println("My age is :" + age);
关于java - 扫描仪不接受另一个字符串的输入并跳过它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50675707/