java - java中的多字扫描仪输入?

标签 java if-statement user-input java.util.scanner

所以我尝试根据用户的输入使用 if-else 语句。它在用户输入只有一个单词时起作用,但是,多个单词输入无法识别并触发 else 语句。我该如何解决这个问题?

import java.util.Scanner;

public class MyFirstJavaClass {

public static void main(String[] args) { @SuppressWarnings("resource") Scanner myScanner = new Scanner(System.in); String answer; System.out.println("Catch the tiger or run away?"); answer = myScanner.next(); if (answer.equals("Catch the tiger" )) { System.out.println("You've been mauled by a tiger! What were you thinking?"); answer = myScanner.next(); } else { System.out.println("run away"); } } }

最佳答案

替换:

answer = myScanner.next();

与:

answer = myScanner.nextLine();

next 只会读入下一个值,直到它到达空格或换行符。在进行比较之前,您想阅读整行内容

关于java - java中的多字扫描仪输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20141229/

相关文章:

C 用户输入不起作用(c、lua)

java - 根据条件更新 Firebase 中的字段

java - Java包之间如何传递数据?

java - 控制 ime_action_done 行为

带有 if 语句的 Javascript while 循环

javascript - 验证 JavaScript 中的 11 位字符串输入

Java编程: How do I make this for loop program that accepts user input subtract the input properly?

c - 用户输入的数组元素之和的问题

java - 原始类型在系统中是如何表示的? (Integer.toString(int) 为例)

c# - “高级”控制台应用程序