1
/*
Profanity Filter:
- Cat
- Dog
- LLama
- Has to differ cases, like cAt
- Has to differ words that contain the words to be filtered, "Cataclysm", for example. Hello, World of Warcraft.
*/
import java.util.Scanner;
public class ProfanityFilter
{
public static void main (String[] args)
{
Scanner kb = new Scanner(System.in);
String userInput, toLowerCase;
boolean flag = false;
int i;
String[] list = new String[12];
list[0] = "cat";
list[1] = " cat";
list[2] = "cat ";
list[3] = " cat ";
list[4] = "dog";
list[5] = " dog";
list[6] = "dog ";
list[7] = " dog ";
list[8] = "llama";
list[9] = " llama";
list[10] = "llama ";
list[11] = " llama ";
System.out.println("Enter a string:");
userInput = kb.nextLine();
toLowerCase = userInput.toLowerCase();
for (i = 0; i < list.length; i++)
{
if(toLowerCase.contains(list[i]) | toLowerCase.equals(list[i]))
{
flag = true;
}
}
if (flag)
{
System.out.println("Something you said is forbidden.");
}
else
{
System.out.println("Nothing was found");
}
}
}
私は必要なものに対して適切な例外を見つけることができません。私はかなり近いと知っていますが、この問題を解決し、必要なインスタンス(配列内のインスタンス)に対してtrueを返すソリューションが空になるまで、多くの時間をかけて疲れました。私がここで間違っていることや、正規表現がない適切な解決策に私を指摘できますか?欲求不満フィルタ:配列の値を_only_にする方法について助けが必要なだけです。
私はすでに休憩を試みました。ブール値フラグをtrueに設定してもうまくいきませんでしたが、iteratingを続けるので、出力はfalseのままです。
ありがとうございます!ここで
あなたが起こることを望んで言わなかったが、私はあなただけしたい推測している:ここで
は、ストリーミングjava8のバージョンがありますキーワード 'break;'を使用してください。 –
私はあなたが '休憩 'を探していると思います。 – azurefrog
何か、私は休憩を使用しようとしました。フラグがtrueになった後は配列全体を繰り返し処理し、他の値をチェックするときにフラグをfalseにします。 –