java - Java 中的用户输入和 .equals() 问题

标签 java string

我对 java 编码相当陌生,但错误是,如果我输入正确答案或不正确答案,它仍然显示正确和不正确。

import java.util.Scanner;
public class MathTest {
    public static void main(String[] args) {
        Scanner user_input = new Scanner(System.in);
        System.out.println("What is 5 times 4? ");
        String question;
        question = user_input.next();
        if (question.equals(20));
        System.out.println("Correct!");
        if (!"20".equals(question));
        System.out.println("Incorrect!");
    }
}

最佳答案

删除 if 语句末尾的分号。它被视为空行。

甚至使用显式大括号,例如 if(foo) { bar(); }.

关于java - Java 中的用户输入和 .equals() 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19876564/

相关文章:

java - H2数据库自动递增id在第一次输入后具有随机值

java - 如何从中获取文本字符串

java - 将多个对象放入数组列表中并绘制它们

java - Log4j2:切换到路由后自定义插件不起作用

c - 在 Perl 中实现类似 sscanf 的功能的最佳方法是什么?

javascript - 如何用<br>替换html正文部分中的\n字符

perl - 如何在perl中一次使用严格的地方处理多行字符串?

java - String.split 导致最后一个索引换行

java - 使用replaceAll替换数字中的字符在java中不起作用

java - 使用原语改造通用响应对象