Подсчет вхождений каждого символа в строку через коллекцию JAVA.

Предположим, вам нужно написать программу на Java, которая печатает количество вхождений каждого символа, а также не должна печатать повторяющиеся вхождения повторяющихся символов, как показано в примере:

Вход: java java

Выход: j=2

a=4

v=2

=1

Этот код также подсчитывает появление пробела.

импортировать java.util.Iterator;

импортировать java.util.LinkedHashMap;

импортировать java.util.Map.Entry;

импортировать java.util.Scanner;

открытый класс DuplicateCount {

public static void main(String[] args) {

Сканер sc = новый сканер (System.in);

Строка ул = sc.nextLine();

char[] ch = str.toCharArray();

LinkedHashMap‹Character, Integer› ma = new LinkedHashMap‹›();

for (int i = 0; i ‹ ch.length; i++) {

если (ma.containsKey(ch[i])) {

ma.replace(ch[i], ma.get(ch[i]) + 1);

} еще {

ma.put(ch[i], 1);

}

}

Iterator‹Entry‹Character, Integer›› it = ma.entrySet().iterator();

в то время как (it.hasNext()) {

System.out.println(it.next());

}

ск.закрыть();

}

}

Вышеприведенная программа содержит пробелы для символов. Если вы хотите удалить пробел, просто добавьте « ma.remove(‘ ‘); «Перед итерацией карты.