Автор оригинала: Pankaj Kumar.
HashMap является одной из наиболее широко используемых реализаций Map для хранения пар ключ-значение. Он был представлен в Java 1.2 и является важным классом API коллекций. Здесь я пытаюсь реализовать HashMap с помощью ArrayList .
Реализация хэш-карты в Java
Приведенный ниже код предоставит две основные функции хэш-карты, т. е. get(ключ)
и put(ключ, значение)
. Код также заботится о проверке повторяющихся значений при хранении записей.
Это базовая реализация HashMap и не должна использоваться в качестве замены HashMap. Кроме того, во время тестирования кода убедитесь, что объект, используемый в КЛЮЧЕ, имеет правильную реализацию метода equals ().
Это базовая реализация HashMap и не должна использоваться в качестве замены HashMap. Кроме того, во время тестирования кода убедитесь, что объект, используемый в КЛЮЧЕ, имеет правильную реализацию метода equals ().
package com.journaldev.util; import java.util.ArrayList; import java.util.List; public class MyHashMap { class Container{ Object key; Object value; public void insert(Object k, Object v){ this.key=k; this.value=v; } } private Container c; private ListrecordList; public MyHashMap(){ this.recordList=new ArrayList (); } public void put(Object k, Object v){ this.c=new Container(); c.insert(k, v); //check for the same key before adding for(int i=0; i
Результатом приведенной выше программы является:
3 1 4 null
Вдохновение : Мне часто задавали этот вопрос в интервью. Я также задавал этот вопрос многим разработчикам во время интервью. 🙂