java - 脏话过滤器错误

标签 java if-statement

我们希望为用户提供过滤掉脏话的选项。假设我们认为猫、狗和美洲驼这些词是亵渎的。编写一个程序,从键盘读取一个字符串,并测试该字符串是否包含我们的亵渎单词之一。您的程序应该找到像 cAt 这样仅大小写不同的单词。

尝试:

import java.util.Scanner;

public class Assign5 {
    public static void main(String[] args) {
        String cat,dog,llama,x;
        System.out.println("Enter a word");
        Scanner keyboard = new Scanner (System.in);

        x = keyboard.next();
        x.equalsIgnoreCase(x);

        if(x.indexOf("cat")!=-1&&x.indexOf("dog")!=-1&&x.indexOf("llama")!=-1);
        {
            System.out.println("Profanity Detected");
        }
        else
        {
            System.out.println("No Profanity Detected");     
        } 
    }

出于某种原因,它在 else 下划线,所以我无法运行它。我做错了什么?

我不允许使用:for、while 和数组。我们还没有达到这些。我只允许使用:boolean、switch 和 if-else。另外,我使用 x.equalsIgnoreCase(x) 来放弃大小写标识。它会起作用吗?

最佳答案

问题是这样的:

if (x.indexOf("cat") != -1 
    && x.indexOf("dog") != -1 
    && x.indexOf("llama") != -1); // <-- look there

{
    System.out.println("Profanity Detected");
}

你注意到“if”末尾的某些内容了吗?

提示“{block}”不是 if 的一部分!这就是导致“else”下划线的原因。 也许还有其他错误,但这完全是语法错误。

我这样格式化我的代码,这样我就可以轻松发现这些错误。采用良好的代码格式是一项非常高效的任务:)

if (expr) {
   ...
} else {
   ...
}

关于java - 脏话过滤器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4982595/

相关文章:

java - Java Web 服务客户端中的连接详细信息和超时

Java 我 : Emulator shows no GUI

python - 如何不通过大写其他代码来替换代码?

javascript - Angular : How to show icon. png 取决于项目的属性?

python - Python if语句语法错误问题

java - 您将如何在(惯用的)scala 中编写此 java 代码?

Java file.getPath() 返回语言修改路径

Java Swing JTextArea 镜像

java - HttpServer 不是 API 的 VSCode Java 访问限制错误

if-statement - CoffeeScript 字符串比较