小编典典

亵渎过滤器错误

java

我们希望为我们的用户提供过滤亵渎行为的选项。假设我们认为猫,狗和美洲驼这两个词是亵渎的。编写一个程序,该程序从键盘读取一个字符串,并测试该字符串是否包含我们亵渎的单词之一。您的程序应该找到像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和array。我们还没有到那些。我只允许使用:布尔值,开关和if-
else。另外,我也x.equalsIgnoreCase(x)用来丢弃案例识别。能行吗


阅读 307

收藏
2020-11-30

共1个答案

小编典典

问题是这样的:

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

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

您是否注意到“ if”结尾处的内容?

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

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

if (expr) {
   ...
} else {
   ...
}
2020-11-30