Мы должны отфильтровать три слова: кошка, собака и лама. Программа должна отфильтровывать эти слова при изменении, например, cAt.
import java.util.Scanner;
public class Assign5 {
public static void main(String[] args)
{
String cat,dog,llama,x,y,z;
System.out.println("Enter a word");
Scanner keyboard = new Scanner (System.in);
x=keyboard.next();
y=x.toLowerCase();
if (y.indexOf("cat")!=-1||y.indexOf("dog")!=-1|y.indexOf("llama")!=-1)
{
System.out.println("Profanity Detected");
}
else if(y.indexOf("cat")!=-1||y.indexOf("dog")!=-1|y.indexOf("llama")!=-1)
{
y.charAt(0);
y.charAt(1);
y.charAt(2);
y.charAt(3);
System.out.println("No Profanity Detected");
}
}
}
Выход:
Введите слово
догматический
Обнаружена ненормативная лексика
Я пытаюсь отсеять любые слова, которые содержат эти три слова. Это не читает это. Я попытался разделить символы с помощью charAt, но это не работает. он продолжает читать, если. Также, как я делаю это чувствительным к регистру? Он обнаруживает «cAt» как профан, но также считает «кошку» профаном. Я не могу использовать: массив, для, в то время как или разделить. Сейчас я могу работать только с if-else, switch и charAt для разделения.
@ The Scrum Meister: я тоже это опубликовал. Это репост, так как у меня все еще есть проблемы с этой штукой.