{"id":37,"date":"2023-10-04T22:06:00","date_gmt":"2023-10-04T21:06:00","guid":{"rendered":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/?p=37"},"modified":"2024-01-08T09:15:16","modified_gmt":"2024-01-08T08:15:16","slug":"java-collections-die-basics","status":"publish","type":"post","link":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/?p=37","title":{"rendered":"Java Collections &#8211; die Basics"},"content":{"rendered":"\n<p>Java Collections sind eine Gruppe von Klassen und Interfaces, die dazu dienen, Datenstrukturen effizient zu verwalten und zu manipulieren. Diese Collections bieten eine breite Palette von Implementierungen f\u00fcr Listen, Sets, Maps und mehr. In diesem Artikel werden wir die verschiedenen Java Collections erkunden, ihre Anwendungszwecke verstehen und Beispiele f\u00fcr den praktischen Einsatz dieser Datenstrukturen betrachten.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Listen<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1.1 ArrayList<\/h3>\n\n\n\n<p>Die <code>ArrayList<\/code> ist eine dynamische Array-Implementierung, die das Hinzuf\u00fcgen und Entfernen von Elementen erm\u00f6glicht, ohne die Gr\u00f6\u00dfe manuell festlegen zu m\u00fcssen.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">List&lt;<span class=\"hljs-built_in\">String<\/span>&gt; arrayList = <span class=\"hljs-keyword\">new<\/span> ArrayList&lt;&gt;();\narrayList.add(<span class=\"hljs-string\">\"Java\"<\/span>);\narrayList.add(<span class=\"hljs-string\">\"Collections\"<\/span>);\narrayList.add(<span class=\"hljs-string\">\"Beispiel\"<\/span>);\n\nSystem.out.println(arrayList); <span class=\"hljs-comment\">\/\/ Ausgabe: &#91;Java, Collections, Beispiel]<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">1.2 LinkedList<\/h3>\n\n\n\n<p>Im Gegensatz zur <code>ArrayList<\/code> ist die <code>LinkedList<\/code> eine doppelt verkettete Liste. Sie eignet sich gut f\u00fcr h\u00e4ufige Einf\u00fcge- und L\u00f6schoperationen.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">List&lt;<span class=\"hljs-built_in\">String<\/span>&gt; linkedList = <span class=\"hljs-keyword\">new<\/span> LinkedList&lt;&gt;();\nlinkedList.add(<span class=\"hljs-string\">\"Java\"<\/span>);\nlinkedList.add(<span class=\"hljs-string\">\"Collections\"<\/span>);\nlinkedList.add(<span class=\"hljs-string\">\"Beispiel\"<\/span>);\n\nSystem.out.println(linkedList); <span class=\"hljs-comment\">\/\/ Ausgabe: &#91;Java, Collections, Beispiel]<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">2. Sets<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">2.1 HashSet<\/h3>\n\n\n\n<p>Das <code>HashSet<\/code> ist eine Implementierung der Set-Schnittstelle und speichert Elemente ohne Duplikate. Die Reihenfolge der Elemente ist nicht garantiert.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-built_in\">Set<\/span>&lt;<span class=\"hljs-built_in\">String<\/span>&gt; hashSet = <span class=\"hljs-keyword\">new<\/span> HashSet&lt;&gt;();\nhashSet.add(<span class=\"hljs-string\">\"Java\"<\/span>);\nhashSet.add(<span class=\"hljs-string\">\"Collections\"<\/span>);\nhashSet.add(<span class=\"hljs-string\">\"Beispiel\"<\/span>);\n\nSystem.out.println(hashSet); <span class=\"hljs-comment\">\/\/ Ausgabe: &#91;Java, Beispiel, Collections] (Reihenfolge kann variieren)<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">2.2 TreeSet<\/h3>\n\n\n\n<p>Das <code>TreeSet<\/code> ist eine Set-Implementierung, die die Elemente in aufsteigender Reihenfolge sortiert speichert.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-built_in\">Set<\/span>&lt;<span class=\"hljs-built_in\">String<\/span>&gt; treeSet = <span class=\"hljs-keyword\">new<\/span> TreeSet&lt;&gt;();\ntreeSet.add(<span class=\"hljs-string\">\"Java\"<\/span>);\ntreeSet.add(<span class=\"hljs-string\">\"Collections\"<\/span>);\ntreeSet.add(<span class=\"hljs-string\">\"Beispiel\"<\/span>);\n\nSystem.out.println(treeSet); <span class=\"hljs-comment\">\/\/ Ausgabe: &#91;Beispiel, Collections, Java]<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">3. Maps<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">3.1 HashMap<\/h3>\n\n\n\n<p>Die <code>HashMap<\/code> implementiert die Map-Schnittstelle und speichert Schl\u00fcssel-Wert-Paare. Sie erlaubt den schnellen Zugriff auf die Werte \u00fcber den Schl\u00fcssel.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-built_in\">Map<\/span>&lt;Integer, <span class=\"hljs-built_in\">String<\/span>&gt; hashMap = <span class=\"hljs-keyword\">new<\/span> HashMap&lt;&gt;();\nhashMap.put(<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-string\">\"Java\"<\/span>);\nhashMap.put(<span class=\"hljs-number\">2<\/span>, <span class=\"hljs-string\">\"Collections\"<\/span>);\nhashMap.put(<span class=\"hljs-number\">3<\/span>, <span class=\"hljs-string\">\"Beispiel\"<\/span>);\n\nSystem.out.println(hashMap); <span class=\"hljs-comment\">\/\/ Ausgabe: {1=Java, 2=Collections, 3=Beispiel}<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\">3.2 TreeMap<\/h3>\n\n\n\n<p>Das <code>TreeMap<\/code> ist eine Map-Implementierung, die die Schl\u00fcssel in aufsteigender Reihenfolge sortiert speichert.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-built_in\">Map<\/span>&lt;Integer, <span class=\"hljs-built_in\">String<\/span>&gt; treeMap = <span class=\"hljs-keyword\">new<\/span> TreeMap&lt;&gt;();\ntreeMap.put(<span class=\"hljs-number\">3<\/span>, <span class=\"hljs-string\">\"Beispiel\"<\/span>);\ntreeMap.put(<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-string\">\"Java\"<\/span>);\ntreeMap.put(<span class=\"hljs-number\">2<\/span>, <span class=\"hljs-string\">\"Collections\"<\/span>);\n\nSystem.out.println(treeMap); <span class=\"hljs-comment\">\/\/ Ausgabe: {1=Java, 2=Collections, 3=Beispiel}<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">4. Queues<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">4.1 LinkedList als Queue<\/h3>\n\n\n\n<p>Die <code>LinkedList<\/code> kann auch als Queue verwendet werden, indem Elemente am Ende hinzugef\u00fcgt und am Anfang entfernt werden.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-7\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">Queue&lt;<span class=\"hljs-built_in\">String<\/span>&gt; queue = <span class=\"hljs-keyword\">new<\/span> LinkedList&lt;&gt;();\nqueue.add(<span class=\"hljs-string\">\"Java\"<\/span>);\nqueue.add(<span class=\"hljs-string\">\"Collections\"<\/span>);\nqueue.add(<span class=\"hljs-string\">\"Beispiel\"<\/span>);\n\nSystem.out.println(queue.poll()); <span class=\"hljs-comment\">\/\/ Ausgabe: Java (entfernt das erste Element)<\/span>\nSystem.out.println(queue); <span class=\"hljs-comment\">\/\/ Ausgabe: &#91;Collections, Beispiel]<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-7\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">5. Anwendungszwecke der Collections<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>ArrayList<\/strong>: Gut geeignet f\u00fcr h\u00e4ufigen Zugriff auf Elemente, wenn die Gr\u00f6\u00dfe bekannt ist.<\/li>\n\n\n\n<li><strong>LinkedList<\/strong>: Ideal f\u00fcr h\u00e4ufige Einf\u00fcge- und L\u00f6schoperationen.<\/li>\n\n\n\n<li><strong>HashSet<\/strong>: Effiziente Suche und Hinzuf\u00fcgen von Elementen ohne Duplikate.<\/li>\n\n\n\n<li><strong>TreeSet<\/strong>: Sortierte Menge von Elementen.<\/li>\n\n\n\n<li><strong>HashMap<\/strong>: Schneller Zugriff auf Werte \u00fcber den Schl\u00fcssel.<\/li>\n\n\n\n<li><strong>TreeMap<\/strong>: Sortierte Map nach Schl\u00fcsseln.<\/li>\n\n\n\n<li><strong>Queue (LinkedList)<\/strong>: Verwendung als Warteschlange f\u00fcr Aufgabenverarbeitung in Reihenfolge.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Fazit<\/h2>\n\n\n\n<p>Java Collections bieten eine umfassende Auswahl von Datenstrukturen, die den Bed\u00fcrfnissen verschiedener Anwendungsf\u00e4lle gerecht werden. Durch die Auswahl der richtigen Collection k\u00f6nnen Entwickler die Leistung ihrer Anwendungen optimieren und den Code effizienter gestalten. Das Verst\u00e4ndnis der Anwendungszwecke und die praktische Anwendung dieser Collections sind entscheidend, um Java-Anwendungen effizient zu gestalten.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Java Collections sind eine Gruppe von Klassen und Interfaces, die dazu dienen, Datenstrukturen effizient zu verwalten und zu manipulieren. Diese Collections bieten eine breite Palette von Implementierungen f\u00fcr Listen, Sets, Maps und mehr. In diesem Artikel werden wir die verschiedenen Java Collections erkunden, ihre Anwendungszwecke verstehen und Beispiele f\u00fcr den praktischen Einsatz dieser Datenstrukturen betrachten. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-37","post","type-post","status-publish","format-standard","hentry","category-plain_java"],"_links":{"self":[{"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/posts\/37","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=37"}],"version-history":[{"count":1,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/posts\/37\/revisions"}],"predecessor-version":[{"id":38,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=\/wp\/v2\/posts\/37\/revisions\/38"}],"wp:attachment":[{"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=37"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=37"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.xn--javaeinfacherklrt-4qb.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=37"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}