我们希望为我们的用户提供过滤亵渎行为的选项。假设我们认为猫,狗和美洲驼这两个词是亵渎的。编写一个程序,该程序从键盘读取一个字符串,并测试该字符串是否包含我们亵渎的单词之一。您的程序应该找到像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由于某种原因它在强调,所以我不能运行它。我究竟做错了什么?
else
我不允许使用:for,while和array。我们还没有到那些。我只允许使用:布尔值,开关和if- else。另外,我也x.equalsIgnoreCase(x)用来丢弃案例识别。能行吗
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的一部分!这就是导致“其他”下划线的原因。也许还存在其他错误,但这完全是语法错误。
我这样格式化代码,以便可以轻松发现这些错误。采用良好的 代码格式 是一项非常有成效的任务:)
if (expr) { ... } else { ... }