<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>HashMap on JAVAPRO Germany</title><link>https://javapro.svenruppert.com/tags/hashmap/</link><description>Recent content in HashMap on JAVAPRO Germany</description><generator>Hugo</generator><language>de-DE</language><lastBuildDate>Sun, 08 Jun 2025 09:53:06 +0000</lastBuildDate><atom:link href="https://javapro.svenruppert.com/tags/hashmap/index.xml" rel="self" type="application/rss+xml"/><item><title>Wenn hashCode() lügt und equals() hilflos ist</title><link>https://javapro.svenruppert.com/wenn-hashcode-luegt-und-equals-hilflos-ist/</link><pubDate>Sun, 08 Jun 2025 09:53:06 +0000</pubDate><guid>https://javapro.svenruppert.com/wenn-hashcode-luegt-und-equals-hilflos-ist/</guid><description>&lt;p&gt;Ein tiefer Blick in Java’s HashMap-Fallen – visuell demonstriert mit Vaadin Flow&lt;/p&gt;
&lt;h3 id="die-stille-gefahr-in-der-standardbibliothek"&gt;&lt;strong&gt;Die stille Gefahr in der Standardbibliothek&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;Die Verwendung von HashMap und HashSet gehört zum täglich Brot in der Java-Entwicklung. Diese Datenstrukturen bieten exzellente Performance für Lookup- und Einfügeoperationen – solange ihre fundamentalen Annahmen erfüllt bleiben. Eine davon lautet: Der hashCode() eines Schlüssels bleibt stabil. Was aber, wenn das nicht der Fall ist?&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=u-tSy27RXA8"&gt;https://www.youtube.com/watch?v=u-tSy27RXA8&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Genau hier lauert eine der subtilsten und zugleich gefährlichsten Fallen der Java-Standardbibliothek: mutable Schlüsselobjekte. In diesem Artikel zeigen wir nicht nur, warum diese Konstellation problematisch ist, sondern führen das Phänomen interaktiv mit Vaadin Flow vor. Leserinnen und Leser erfahren, wie die HashMap intern funktioniert, warum equals() allein nicht genügt, und wie man mit modernen Sprachmitteln wie record robuste, unveränderliche Schlüssel erzeugt.&lt;/p&gt;</description></item></channel></rss>