Почему выводятся цифры и знаки препинания
Почему при методе !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);
}
}
