Почему выводятся цифры и знаки препинания

Почему при методе !wordLetters.equals(SignandDecimal[a] все равно выводятся числа и знаки препинания?

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;

public class main {


public static void main(String[] args) {

    System.out.println("Введите ниже текст, который вас интересует ↓ ");
    Scanner scanner = new Scanner(System.in);
    String[] words = scanner.nextLine().split(" "); //Создается массив символов из word
    ArrayList<String> repeateWords = new ArrayList<>();
    int chislo = 0;     //Индекс массива
    char[] SignandDecimal = new char[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 0, ',', '.', ':', ';', '!', '@', '#', '№', '"', '$', '%', '^', '&', '?', '*', '(', ')', '[', ']', '{', '}', '/', '|', '<', '>', '`', '+', '=', '-', '_', '~', '"'};
    //1,2,3,4,5,6,7,8,9,0,
    System.out.println("Вы ввели:" + Arrays.toString(words));
    char enter=' ';
    char Proverka = ' ';


    for (int i = 0; i < words.length; i++) {
        char[] wordLetters = words[i].toCharArray(); //массив символов со строк
        for (int h = 0; h < wordLetters.length; h++) {

            if (Character.isDigit(wordLetters[h])) {
                break;
            }
        }
    }

    int counter = 0;

    for (int i = 0; i < words.length; i++) {
        char[] wordLetters = words[i].toCharArray();    //массив символов со строк
        int var = 0;
        for (int h = 0; h < wordLetters.length; h++) {
            char letter = wordLetters[h];    //Берем первый символ для сравнения со всеми

            for (int j = 0; j < wordLetters.length; j++) {
                if (j == h) {                           //если индексы указывают на одну и ту же букву, то пропускаем
                    continue;
                }
                for (int a = 0; a < SignandDecimal.length; a++) {
                    if (letter == wordLetters[j]) {

                        if (!wordLetters.equals(SignandDecimal[a])) {
                            var++;
                            if ((var >= 3) && (wordLetters[i] != Proverka)) {
                                //if (wordLetters == (repeateWords[i])) {    //Крашится все в этом моенте
                                    repeateWords.add(chislo, words[i]);   //Записываем в элемент chislo найденное значение
                                    Proverka = wordLetters[i];
                                    chislo++;      //Ставим новый индекс массива
                                    counter++;     //итерируем, чтобы  дать коду понять, что мы нашли слова с повторяющимися символами
                                    break;
                               // } else {
                                //    continue;
                                //}

                            }
                        } else{
                            continue;
                        }
                    }


                }
                //


            }
            if (counter == 1) {
                counter = 0;
                break;                //Останавливаем код и переходим ко внешнему циклу, новое слово
            }
        }

    }

    System.out.println(repeateWords);
}

}

введите сюда описание изображения


Ответы (0 шт):