tim*_*tim 3 java java.util.scanner
我正在尝试读取包含多个单词的字符串,即.洛杉矶或纽约市.对于"离开"和"到达"使用scanner.next()只读取第一个如果有两个单词并在变量之间拆分它们.nextLine()也没有太大的运气.这是我的代码:
System.out.print("\nEnter flight number: ");
int flightNumber = Integer.valueOf(scanner.nextLine());
System.out.print("\nEnter departing city: ");
String departingCity = scanner.nextLine();
System.out.print("\nEnter arrival city: ");
String arrivalCity = scanner.nextLine();
Run Code Online (Sandbox Code Playgroud)
我知道这很简单,但我还没弄清楚.
这是输入/输出w /上面的代码:
输入航班号:29
输入离境城市:(立即跳到下一行)
进入抵达城市:
----我真正想要的是什么----
输入航班号:29
进入离开城市:洛杉矶(能够输入多个单词而不跳过下一个输入)
进入抵达城市:堪萨斯城
你的问题是next()没有读取回车符,它会被你的下一个next()或nextLine()自动读取.始终使用nextLine()并将输入转换为整数:
public static void main(String[] args) throws Exception {
Scanner scanner = new Scanner(System.in);
System.out.print("\nEnter flight number: ");
int flightNumber = Integer.valueOf(scanner.nextLine());
System.out.print("\nEnter departing city: ");
String departingCity = scanner.nextLine();
System.out.print("\nEnter arrival city: ");
String arrivalCity = scanner.nextLine();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6822 次 |
| 最近记录: |