Моя программа собирается отсортировать вводимый текст по алфавиту и считать каждую букву в тексте. Таким образом, если кто-то введет «Lorem Ispum Dolor Amet», на выходе будет «adileelmmmoooprrstu» и «a = 1, d = 1, e = 2, i = 1, l = 2, m = 3, o = 3, p. = 1, r = 2, s = 1, t = 1, u = 1 ";
Итак, у меня есть вводимый текст в массиве символов. Однако, когда я пробую свой код, он выводит символ прямоугольника.
Input:"Lorem Ispum Dolor Amet"
Output:" adileelmmmoooprrstu"(with rectangle symbol at start)
Входной переменной является объект Character, поэтому я пробовал это:
if ((input.charValue()<65 && input.charValue()> 90) &&
(input.charValue() < 97 && input.charValue() > 122)) continue;
и это: if (input==' ' || input==' ') continue; (если ввод пробел или прямоугольник)
Однако он не работает (работает с пробелом, я не могу фильтровать прямоугольник)
Как я могу этого избежать и почему в качестве первого символа в массиве char используется прямоугольник?
Было бы разумнее показать код все. Вы пытались поиграть с нами в тайных охотников?
Спецификация была причиной.




Это условие
if ((input.charValue()<65 && input.charValue()> 90) &&
(input.charValue() < 97 && input.charValue() > 122)) continue;
всегда будет ложным, так как значение char не может быть одновременно <65 и> 90. Скорее всего, как только вы исправите условие фильтрации, проблема с прямоугольником исчезнет.
Не совсем уверен, почему, поскольку вы не загрузили весь свой код, но вы можете удалить символ прямоугольника в начале с помощью
output.substring(1);.