Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите создать в Java счетчик для HashMap

Неизвестно Мастер (2418), на голосовании 6 месяцев назад
Имеется HashMap, в которую передана строка. Я циклом прошелся по строке и подсчитал количеством каждого символа. Теперь мне нужно создать такой счетчик, где после каждого прохода, найденная буква будет уменьшаться.

То есть у меня буквы "AAAACACBA", после первой итерации я получил букву "В", а мне нужно в счетчике сделать ее количество = 0.
Голосование за лучший ответ
Андрей Панарин Искусственный Интеллект (249236) 7 месяцев назад
 map.put("B", map.get("B") - 1); 
НеизвестноМастер (2418) 7 месяцев назад
Андрей, подскажи плиз!

public class Task4 {
static String n = "AAAACACBA";
public static void main(String[] args) {
HashMap<Character, Integer> hm = new HashMap();
Character ch = null;
for (int i = 0; i < n.length(); i++) {
ch = n.charAt(i);
if (hm.containsKey(ch)) {
int oldValue = hm.get(ch);
hm.put(ch, oldValue + 1);
} else {
hm.put(ch, 1);
}
}
System.out.println(hm);
НеизвестноМастер (2418) 7 месяцев назад
StringBuilder stbC = new StringBuilder(1);

StringBuilder stbL = new StringBuilder(4);

StringBuilder stbR = new StringBuilder(4);

Character c = Character.valueOf('с');

hm.entrySet().stream()

.filter(x -> {

return x.getValue() % 2 == 1;

});

stbC.append(c);

Тут нужно пройтись по HashMapи и четный символы распределить с помощью keySet
Андрей Панарин Искусственный Интеллект (249236) Какие символы называются четными? Те, что встречаются четное число раз?
Похожие вопросы