Перейти к содержимому

Как работает HashMap изнутри || Популярный вопрос на собеседовании по Java о коллекциях (HashMap)

Selenium Express

0:00 / 0:00

Как работает HashMap изнутри || Популярный вопрос на собеседовании по Java о коллекциях (HashMap)

609 377 просмотров · 8 лет назад
Selenium Express
128 тыс. подписчиков
609 377 просмотров · 8 лет назад
В этом уроке мы изучим внутреннюю работу HashMap. Это очень популярный вопрос на собеседованиях по Java, касающийся фреймворков коллекций, и его задают много раз, чтобы проверить понимание кандидатами коллекции Map. В этой серии уроков я рассмотрю три момента, которые познакомят вас с внутренней реализацией HashMap. 1) Мы рассмотрим подробный обзор того, как Map работает внутри, когда мы используем map.put(Key k, Value v). 2) После того, как мы получим общее представление, мы перейдем к отладке всего, что мы изучили в этом уроке. 3) В последнем уроке этой серии я расскажу, как работает метод get внутри (map.get(Key K)). Таким образом, когда мы создаем объект Map, внутри создается массив корзин размером 16 (если мы используем конструктор по умолчанию). Затем, когда мы используем метод map.put, внутри вычисляются хеш-код и индекс для ключа, и ключ сохраняется в определенном индексе. В случае коллизии хешей, ключ с тем же хеш-кодом будет храниться в одном и том же индексе, поскольку каждый сегмент представляет собой узел или связанный список. В каждом сегменте хранятся четыре элемента в виде связанного списка: хеш-код, ключ, значение и следующий элемент (который содержит адрес следующего узла с тем же хеш-кодом). Давайте разберем все это на схеме, потому что это один из самых популярных вопросов на собеседованиях по хеш-таблицам. Поэтому, пожалуйста, внесите этот вопрос в свой список дел и лучше подготовьтесь к нему. «Как работает хеш-таблица внутри Java на примере» Подпишитесь на мой канал, перейдя по ссылке ниже.    / @seleniumexpress   Оставайтесь с нами и ставьте лайк моей странице в Facebook, чтобы получать больше информации.   / seleniumexpress   Музыка: ----------- авторы: - 1) Adventures от A Himitsu   / a-himitsu   Creative Commons — Attribution 3.0 Unported — CC BY 3.0 http://creativecommons.org/licenses/b... Музыка выпущена Argofox    • A Himitsu - Adventures [Royalty Free Music]   Музыка предоставлена ​​Audio Library    • Adventures – A Himitsu (No Copyright Music)   (вступление) 2) NCM Epic Music Ender Guney    / ncmepicmusic   ----- шаблон вступления:    / alexbau01