为什么扫描仪没有输入另一个字符串并对其进行调整?我不明白,这是我的代码:
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);
}
}
输出
输入您的姓名 dk
我的名字是:dk
输入您的年龄
22
我的年龄是:22
输入您的地址
我的地址是:
答案 0 :(得分:1)
很简单。您可以在s.nextLine();
;
age = s.nextInt()
扫描程序提供方法nextInt()
来请求用户输入,并且不使用上一个换行符(\n
)。
System.out.println("Enter your age");
age = s.nextInt();
s.nextLine(); // consumes the \n character
System.out.println("My age is :" + age);
答案 1 :(得分:0)
您应该在最后一次系统退出后关闭扫描仪
答案 2 :(得分:0)
在Statement.out.println("My age is",age);
s.nextLine();
上面的语句将执行flush,这将清除缓存位置以接受新输入。