如果关键字匹配,如何扫描用户输入并打印字符串?

时间:2018-03-16 13:09:37

标签: java eclipse if-statement java.util.scanner

我基本上是想为我的学校工作制作一个非常简单的聊天机器人,我一直试图找出当用户输入关键词时如何显示某个字符串文本。

例如,他们的程序将询问“请从这些科目(数学,英语,科学)中选择”,用户将输入类似“我想选择科学”的内容,然后程序将扫描用户输入寻找关键词'英语,数学和科学',如果找到其中一个,它将显示一个字符串消息,如果找不到,它将显示一个错误的字符串消息。

到目前为止,我已经制作了一个if语句,但它只有在用户输入与if语句完全相同时才有效,而我需要它来扫描用户输入,如果在任何地方使用关键字,它将显示句子

import java.util.Scanner;
import javax.swing.JOptionPane;

public class ChatterBot {

    public static void main(String args[]) {
        String input = "";
        input = JOptionPane.showInputDialog("What subject do you want to choose mate (maths, english, science) ");

        if (input.equals("maths")) {
            input = JOptionPane.showInputDialog("Maths is fun and used a lot in subjects");
        }
    }
}

1 个答案:

答案 0 :(得分:2)

等于意味着输入必须与“数学”相同。如果您只想检查输入是否包含单词“maths”,请使用:

if (input.contains("maths")) {
    input = JOptionPane.showInputDialog("Maths is fun and used a lot in subjects");
}