2013-12-04 4 views
0

Как я могу найти элемент HashMap в Java, если HashMap имеет форму и один ключ пуст, поэтому он содержит только пустой символ.удалить элемент в хэш-карте, если ключ пуст

В моем примере:

Пусть Wordmap быть экземпляром HashMap заполнены элементами.

if (wordMap.containsKey("")) { 
    wordMap.remove(""); 
} 

Это не сработало. Я надеюсь, что кто-то может мне помочь.

После этого я конвертирую карту хэша в карту деревьев и сортирую ее по самому большому целому числу. Я печатаю, что на консоли, и это то, что я получаю с

System.out.println("results: " + tree) 

я получаю на консоли:

results: { =194, in=73, ...} 

Благодарности

+1

Уверены ли вы? Это отлично работает: http://ideone.com/YmpIyC –

+0

* «один ключ пуст, поэтому он содержит только пустой символ». * - Что вы подразумеваете под этим? – arshajii

+1

Это сработало для меня. На самом деле вам не нужно проверять с помощью 'containsKey()' as 'remove()' просто возвращает null, если ключ не существует – Blub

ответ

3

Вы можете сделать несколько разных вещей. Для вашего вопроса, я хотел бы сделать:

if (wordMap.containsKey(" ")) { 
    wordMap.remove(" "); 
} 

Однако, чтобы быть более полным, я бы перебирать ключи и удалить любую клавишу, которая проходит тест StringUtils.isEmpty().

+1

'if (wordMap.containsKey (" "))' не нужно. Просто позвоните 'remove' –

1

Вы пытаетесь получить значение? Если да, то вам нужно заменить это wordMap.remove (""); с wordMap.get ("");

В противном случае, если вы пытаетесь удалить запись с помощью ключа «», это правильный способ сделать это.

Смежные вопросы