Ненормативная лексика - Java - PullRequest
0 голосов
/ 13 февраля 2011

Мы должны отфильтровать три слова: кошка, собака и лама. Программа должна отфильтровывать эти слова при изменении, например, 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: я тоже это опубликовал. Это репост, так как у меня все еще есть проблемы с этой штукой.

Ответы [ 2 ]

2 голосов
/ 13 февраля 2011

Чтобы указать вам правильное направление, я укажу вам на Строковую документацию . А именно, функция равенства. На StackOverflow мы стараемся не приводить точные примеры для домашней работы, но направляем ученика в правильном направлении. Если у вас есть какие-либо конкретные вопросы о том, как что-то работает или что-то подобное, мы будем рады помочь.

Один совет, вы не хотите звонить y=x.toLowerCase();, потому что, как только вы это сделаете, у вас не будет возможности провести различие между «кошкой» и «кошкой» (поскольку теперь они оба «кошки») .

0 голосов
/ 24 марта 2015

Вы можете использовать: .contains () метод который является логическим методом, проверяющим строку, возвращает true, если у него есть указанная строка в параметре contains («String param here»).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...