[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-collections-skolko-sozdaetsya-novykh-obektov-kogda-vy-dobavlyaete-novyy-element-v-hashmap":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":17,"progress":18,"seo":19},487,"skolko-sozdaetsya-novykh-obektov-kogda-vy-dobavlyaete-novyy-element-v-hashmap",12,"collections","Collections","📚","Сколько создается новых объектов, когда вы добавляете новый элемент в HashMap","Один новый объект — экземпляр статического вложенного класса `Node\u003CK,V>` (до Java 8 назывался `Entry\u003CK,V>`). Этот объект хранит четыре поля: `hash` (вычисленный хэш), `key` (ссылка на ключ), `value` (ссылка на значение) и `next` (ссылка на следующий узел в корзине).\n\nЕсли при добавлении происходит рехеширование (resize), создается новый массив корзин, но элементы Node не пересоздаются — перемещаются ссылки. Если корзина содержит 8+ элементов и срабатывает treeification, создаются объекты `TreeNode` вместо Node.\n\n> **На собеседовании:** ответ — один объект Node. Упомяните его поля: hash, key, value, next.","","junior",[15,16],"memory","jcf",[],null,{"title":20,"description":21,"ogTitle":22,"ogDescription":23,"keywords":24,"schemaAnswer":36,"featuredSnippetReady":37},"Один новый Node при добавлении в HashMap — Gymterview","Один объект Node\u003CK,V> с полями hash, key, value, next. При рехешировании — новый массив, но Node не пересоздаются. При treeification — TreeNode вместо Node.","Новые объекты при HashMap.put() — Gymterview","Один Node\u003CK,V>: hash, key, value, next. При resize — новый массив, Node перемещаются.",[25,26,27,28,29,30,31,32,33,34,35],"HashMap","Node","Entry","put()","объект","hash","key","value","next","Java","собеседование","Один объект Node\u003CK,V> с полями hash, key, value, next. При рехешировании создаётся новый массив корзин, но Node не пересоздаются. При treeification — TreeNode вместо Node.",true]