{"id":55000267,"date":"2021-06-01T00:00:00","date_gmt":"2021-11-10T09:12:16","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=267"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Nichtgenerische_Auflistungen_unter_VBNET","status":"publish","type":"post","link":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/","title":{"rendered":"Nicht-generische Auflistungen unter VB.NET"},"content":{"rendered":"<p><b>Unter VB6\/VBA waren die bekanntesten und sofort einsetzbaren Auflistungsklassen das Array und die Collection. Sie boten einfache M&ouml;glichkeiten zum Hinzuf&uuml;gen von Objektverweisen oder Werten, zum L&ouml;schen derselben oder auch zum Bearbeiten. Wer mehr brauchte, konnte sich noch des Dictionary-Objekts bedienen, was aber schon das Einbinden eines weiteren Verweises erforderte. Unter .NET gibt es bei Auflistungsklassen einen wichtigen Unterschied: nicht-generische Auflistungsklassen, die nicht stark typisiert sind und generische Auflistungsklassen, die stark typisiert sind. Der vorliegende Artikel betrachtet die wichtigsten nicht-generischen Auflistungsklassen und ihre Eigenschaften.<\/b><\/p>\n<h2>Hinweis zu den Beispielen<\/h2>\n<p>Die Beispiele dieses Artikels haben wir in LINQPad5 erstellt und ausprobiert. Das ist eine schnellere M&ouml;glichkeit als ein Visual Studio Projekt zu erstellen, das Sie f&uuml;r jeden Test neu kompilieren und starten m&uuml;ssen. Weitere Infos zu LINQPad5 finden Sie beispielsweise im Artikel <b>LINQPad: LINQ, C# und VB einfach ausprobieren <\/b>(<b>www.datenbankentwickler.net\/100<\/b>).<\/p>\n<p>Wir verwenden hier unter <b>Language <\/b>den Wert <b>VB Program <\/b>und rufen unsere Beispielprozeduren jeweils von der Hauptprozedur <b>Sub Main <\/b>auf. <\/p>\n<h2>Was sind Auflistungsklassen<\/h2>\n<p>Auflistungsklassen sind Klassen, mit denen Sie Objekte erstellen k&ouml;nnen, die das Speichern einer Reihe anderer Objekte erlauben. .NET bietet einige Auflistungsklassen f&uuml;r verschiedene Anwendungszwecke an. Sie sind aber nicht einfach nur Sammlungen von Daten, sondern bieten auch die Infrastruktur an, um diese Daten an verschiedenen Stellen auf spezielle Art zu nutzen &#8211; zum Beispiel als Datenquelle von Steuerelementen unter WPF.<\/p>\n<p>Die Auflistungsklassen implementieren verschiedene Interfaces, die Eigenschaften, Methoden und Ereignisse f&uuml;r die unterschiedlichen Zwecke vorsehen. Welche Interfaces eine Auflistungsklasse implementiert, k&ouml;nnen Sie im Objektkatalog von Visual Studio nachsehen (<b>Strg + Alt + J<\/b>). Bild 1 zeigt die Basistypen beziehungsweise Schnittstellen der Auflistung <b>ArrayList<\/b>. Hier finden Sie auch die Eigenschaften, Methoden und Ereignisse der jeweiligen Auflistungsklasse.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2021_03\/pic_267_001.png\" alt=\"Eigenschaften, Methoden und Ereignisse der IList-Schnittstelle\" width=\"674,627\" height=\"325,4779\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Eigenschaften, Methoden und Ereignisse der IList-Schnittstelle<\/span><\/b><\/p>\n<p>Die <b>ArrayList<\/b>-Auflistungsklasse implementiert beispielsweise die folgenden Interfaces:<\/p>\n<ul>\n<li><b>IEnumerable<\/b>: Stellt die Eigenschaft <b>GetEnumerator <\/b>bereit, die allerdings nicht explizit verwendet wird, sondern das Durchlaufen der enthaltenen Elemente in einer <b>For Each<\/b>-Schleife erlaubt<\/li>\n<li><b>ICollection<\/b>: Liefert vor allem die Eigenschaft <b>Count<\/b>.<\/li>\n<li><b>IList<\/b>: Enth&auml;lt Methoden, um die Liste zu verwalten &#8211; also um Elemente hinzuzuf&uuml;gen, zu entfernen und abzufragen, die Liste zu leeren und weitere Eigenschaften.<\/li>\n<li><b>ICloneable<\/b>: Liefert die Methode <b>Clone<\/b>.<\/li>\n<\/ul>\n<p>Anhand der Schnittstellen, die eine Auflistungsklasse implementiert, k&ouml;nnen Sie erkennen, welche M&ouml;glichkeiten diese bietet. Andere Auflistungsklassen verwenden noch weitere Schnittstellen wie beispielsweise <b>IDeserializationCallback<\/b>, <b>IDictionary <\/b>oder <b>ISerializable<\/b>.<\/p>\n<p>Dadurch, dass die verschiedenen Auflistungsklassen die Schnittstellen implementieren, haben diese einige Gemeinsamkeiten, auf die Sie z&auml;hlen k&ouml;nnen &#8211; zum Beispiel die M&ouml;glichkeit, die Menge der enthaltenen Elemente mit <b>Count <\/b>zu ermitteln oder diese mit <b>For&#8230;Each <\/b>zu durchlaufen.<\/p>\n<h2>Namespaces mit Auflistungsklassen<\/h2>\n<p>Die Auflistungsklassen sind in eigenen Namespaces organisiert. Der Namespace <b>System.Collections <\/b>enth&auml;lt beispielsweise die Auflistungsklassen <b>ArrayList, HashTable<\/b>, <b>SortedList <\/b>oder <b>Stack<\/b>. Die generischen Auflistungsklassen, &uuml;ber die wir in einem weiteren Artikel namens <b>Generische Auflistungen unter VB.NET <\/b>berichten (<b>www.datenbankentwickler.net\/268<\/b>), finden Sie im Namespace <b>System.Collections.Generic<\/b>. Die <b>ObservableCollection<\/b>, die oft als Datenquelle f&uuml;r WPF-Steuerelemente dient, stammt aus dem Namespace <b>System.Collections.Objectmodel<\/b>. Die jeweiligen Schnittstellen sind &uuml;brigens auch in den jeweiligen Namespaces zu finden.<\/p>\n<h2>Nicht-generische versus generische Auflistungsklassen<\/h2>\n<p>Nicht-generische Auflistungsklassen unter VB.Net sind, wie oben bereits angedeutet, nicht &#8220;stark typisiert&#8221;. Was hei&szlig;t das &uuml;berhaupt Das bedeutet, dass wir nicht explizit den Typ der in der Auflistungsklasse enthaltenen Elemente angeben. Deshalb wird hier der Typ <b>Object <\/b>verwendet. Im Gegensatz dazu geben wir bei generischen Auflistungsklassen den Typ der in der Auflistungsklasse enthaltenen Elemente explizit an, zum Beispiel <b>String<\/b> oder auch komplexere Datentypen. Ein Beispiel, das wir schon oft genutzt haben, sind die Auflistungsklassen mit Entit&auml;ten aus einer Datenbank, die wir als Datenquelle f&uuml;r die Steuerelemente unter WPF nutzen &#8211; diese haben beispielsweise den Datentyp <b>Kunde <\/b>oder <b>Produkt<\/b>. Nicht generische Auflistungsklassen k&ouml;nnen Sie hingegen auch Elemente unterschiedlicher Datentypen hinzuf&uuml;gen.<\/p>\n<h2>Beispiele f&uuml;r nicht-generische Auflistungsklassen<\/h2>\n<p>Es gibt beispielsweise die folgenden nicht-generischen Auflistungsklassen:<\/p>\n<ul>\n<li><b>ArrayList<\/b>: eine sortierte Liste von Elementen. Die Sortierung erfolgt nach der Reihenfolge des Hinzuf&uuml;gens der Elemente.<\/li>\n<li><b>Queue<\/b>: Die <b>Queue<\/b>-Auflistungsklasse erm&ouml;glicht das Verwalten von Eintr&auml;gen nach dem First-In, First-Out-Prinzip.<\/li>\n<li><b>Stack<\/b>: Die <b>Stack<\/b>-Auflistungsklasse arbeitet &auml;hnlich wie Queue, aber andersherum: Sie stellt die zuletzt hinzugef&uuml;gten Elemente als Erste wieder bereit.<\/li>\n<li><b>HashTable<\/b>: Die <b>HashTable<\/b>-Auflistungsklasse speichert Schl&uuml;ssel-Wert-Paare und bietet umfangreiche M&ouml;glichkeiten, diese abzufragen.<\/li>\n<\/ul>\n<h2>Die ArrayList-Auflistung<\/h2>\n<p>Wir schauen uns einige Beispiele f&uuml;r den Umgang mit Auflistungsklassen anhand der <b>ArrayList<\/b>-Auflistungsklasse an. Sp&auml;ter stellen wir weitere nicht-generische Auflistungsklassen vor und beschreiben deren Besonderheiten.<\/p>\n<p>Die wichtigsten Methoden und Eigenschaften einer <b>ArrayList <\/b>sind die folgenden:<\/p>\n<ul>\n<li><b>Count<\/b>: Liefert die Menge der enthaltenen Elemente.<\/li>\n<li><b>CopyTo<\/b>: Kopiert den Inhalt der <b>ArrayList<\/b>-Auflistungsklasse in ein Array.<\/li>\n<li><b>Contains<\/b>: Erwartet den Wert eines Elements als Parameter und gibt an, ob dieses enthalten ist.<\/li>\n<li><b>ToArray<\/b>: Kopiert den Inhalt der <b>ArrayList<\/b>-Auflistungsklasse in ein Array des Typs <b>Object<\/b>.<\/li>\n<li><b>IndexOf<\/b>: Liefert den Index des als Parameter angegebenen Elements. Der Index ist immer nullbasiert.<\/li>\n<li><b>GetRange<\/b>: Erstellt eine neue <b>ArrayList<\/b>-Auflistungsklasse nur mit den Elementen, die durch den Startindex und die Menge als Parameter angegeben wurden.<\/li>\n<li><b>Sort<\/b>: Sortiert die Elemente der ArrayList.<\/li>\n<li><b>Reverse<\/b>: Kehrt die Sortierung der Elemente der ArrayList um.<\/li>\n<li><b>Item<\/b>: Liest das Element mit dem angegebenen Index aus oder setzt diesen.<\/li>\n<li><b>Clear<\/b>: Leert die Auflistungsklasse.<\/li>\n<\/ul>\n<h2>Elemente zu einer nicht-generischen Auflistungsklasse hinzuf&uuml;gen<\/h2>\n<p>Die <b>ArrayList<\/b>-Auflistungsklasse ist eine einfache, nicht-generische Auflistungsklasse, daher verwenden wir diese zun&auml;chst f&uuml;r die Beispiele. Sie k&ouml;nnen der <b>ArrayList<\/b> einfach mit der <b>Add<\/b>-Methode neue Elemente hinzuf&uuml;gen, die verschiedenen Typs sein k&ouml;nnen. Sie k&ouml;nnen sogar eine neue <b>ArrayList <\/b>als Element der <b>ArrayList <\/b>hinzuf&uuml;gen:<\/p>\n<pre><span style=\"color:blue;\">Sub <\/span>ArrayListErstellen\r\n     <span style=\"color:blue;\">Dim <\/span>Gemischt<span style=\"color:blue;\"> As <\/span><span style=\"color:blue;\">New<\/span> ArrayList\r\n     Gemischt.Add(10)\r\n     Gemischt.Add(\"10\")\r\n     Gemischt.Add(\"Andr&eacute;\")\r\n     Gemischt.Add(<span style=\"color:blue;\">New<\/span> ArrayList)\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Au&szlig;erdem sehen Sie, dass wir die Zahl <b>10 <\/b>einmal als Zahl und einmal als Zeichenkette hinzugef&uuml;gt haben. Das weisen die folgenden beiden Anweisungen nach, die Sie der Prozedur hinzuf&uuml;gen:<\/p>\n<pre><span style=\"color:blue;\">Debug.Print<\/span>(Gemischt.Item(0).GetType.ToString)\r\n<span style=\"color:blue;\">Debug.Print<\/span>(Gemischt.Item(1).GetType.ToString)<\/pre>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Visual Basic Entwickler<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000\"><a style=\"color: #ff0000\" href=\"https:\/\/shop.minhorst.com\/magazine\/363\/visual-basic-entwickler-jahresabonnement?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000\">Danach greifen Sie sofort auf <strong>alle rund 200 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000267\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Password<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Remember me<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/data\/wp\/v2\/posts\/55000267?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000267\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"5003f23aeb\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Login\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Unter VB6\/VBA waren die bekanntesten und sofort einsetzbaren Auflistungsklassen das Array und die Collection. Sie boten einfache M&ouml;glichkeiten zum Hinzuf&uuml;gen von Objektverweisen oder Werten, zum L&ouml;schen derselben oder auch zum Bearbeiten. Wer mehr brauchte, konnte sich noch des Dictionary-Objekts bedienen, was aber schon das Einbinden eines weiteren Verweises erforderte. Unter .NET gibt es bei Auflistungsklassen einen wichtigen Unterschied: nicht-generische Auflistungsklassen, die nicht stark typisiert sind und generische Auflistungsklassen, die stark typisiert sind. Der vorliegende Artikel betrachtet die wichtigsten nicht-generischen Auflistungsklassen und ihre Eigenschaften.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[662021,66032021,44000021,44000023,44000016],"tags":[],"yst_prominent_words":[],"class_list":["post-55000267","post","type-post","status-publish","format-standard","hentry","category-662021","category-66032021","category-Entity_Framework","category-PowerApps","category-VBGrundlagen"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"Unter VB6\/VBA waren die bekanntesten und sofort einsetzbaren Auflistungsklassen das Array und die Collection. Sie boten einfache M\u00f6glichkeiten zum Hinzuf\u00fcgen von Objektverweisen oder Werten, zum L\u00f6schen derselben oder auch zum Bearbeiten. Wer mehr brauchte, konnte sich noch des Dictionary-Objekts bedienen, was aber schon das Einbinden eines weiteren Verweises erforderte. Unter .NET gibt es bei Auflistungsklassen einen wichtigen Unterschied: nicht-generische Auflistungsklassen, die nicht stark typisiert sind und generische Auflistungsklassen, die stark typisiert sind. Der vorliegende Artikel betrachtet die wichtigsten nicht-generischen Auflistungsklassen und ihre Eigenschaften.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Andr\u00e9 Minhorst\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Visual Basic Entwickler - Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Nicht-generische Auflistungen unter VB.NET - Visual Basic Entwickler\" \/>\n\t\t<meta property=\"og:description\" content=\"Unter VB6\/VBA waren die bekanntesten und sofort einsetzbaren Auflistungsklassen das Array und die Collection. Sie boten einfache M\u00f6glichkeiten zum Hinzuf\u00fcgen von Objektverweisen oder Werten, zum L\u00f6schen derselben oder auch zum Bearbeiten. Wer mehr brauchte, konnte sich noch des Dictionary-Objekts bedienen, was aber schon das Einbinden eines weiteren Verweises erforderte. Unter .NET gibt es bei Auflistungsklassen einen wichtigen Unterschied: nicht-generische Auflistungsklassen, die nicht stark typisiert sind und generische Auflistungsklassen, die stark typisiert sind. Der vorliegende Artikel betrachtet die wichtigsten nicht-generischen Auflistungsklassen und ihre Eigenschaften.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2021-11-10T09:12:16+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"-001-11-30T00:00:00+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Nicht-generische Auflistungen unter VB.NET - Visual Basic Entwickler\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Unter VB6\/VBA waren die bekanntesten und sofort einsetzbaren Auflistungsklassen das Array und die Collection. Sie boten einfache M\u00f6glichkeiten zum Hinzuf\u00fcgen von Objektverweisen oder Werten, zum L\u00f6schen derselben oder auch zum Bearbeiten. Wer mehr brauchte, konnte sich noch des Dictionary-Objekts bedienen, was aber schon das Einbinden eines weiteren Verweises erforderte. Unter .NET gibt es bei Auflistungsklassen einen wichtigen Unterschied: nicht-generische Auflistungsklassen, die nicht stark typisiert sind und generische Auflistungsklassen, die stark typisiert sind. Der vorliegende Artikel betrachtet die wichtigsten nicht-generischen Auflistungsklassen und ihre Eigenschaften.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#blogposting\",\"name\":\"Nicht-generische Auflistungen unter VB.NET - Visual Basic Entwickler\",\"headline\":\"Nicht-generische Auflistungen unter VB.NET\",\"author\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"..\\\/fileadmin\\\/_temp_\\\/2021_03\\\/pic_267_001.png\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#articleImage\"},\"datePublished\":\"2021-06-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"inLanguage\":\"de-DE\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#webpage\"},\"articleSection\":\"2021, 3\\\/2021, Entity Framework, PowerApps, VB-Grundlagen\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vbentwickler.de\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/#listItem\",\"name\":\"2021\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/#listItem\",\"position\":2,\"name\":\"2021\",\"item\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/3\\\/2021\\\/#listItem\",\"name\":\"3\\\/2021\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/3\\\/2021\\\/#listItem\",\"position\":3,\"name\":\"3\\\/2021\",\"item\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/3\\\/2021\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#listItem\",\"name\":\"Nicht-generische Auflistungen unter VB.NET\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/#listItem\",\"name\":\"2021\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#listItem\",\"position\":4,\"name\":\"Nicht-generische Auflistungen unter VB.NET\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2021\\\/3\\\/2021\\\/#listItem\",\"name\":\"3\\\/2021\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\",\"name\":\"Datenbankentwickler\",\"description\":\"Das Magazin f\\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/cropped-header_vbe-1.png\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#organizationLogo\",\"width\":664,\"height\":225},\"image\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Andr\\u00e9 Minhorst\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#webpage\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/\",\"name\":\"Nicht-generische Auflistungen unter VB.NET - Visual Basic Entwickler\",\"description\":\"Unter VB6\\\/VBA waren die bekanntesten und sofort einsetzbaren Auflistungsklassen das Array und die Collection. Sie boten einfache M\\u00f6glichkeiten zum Hinzuf\\u00fcgen von Objektverweisen oder Werten, zum L\\u00f6schen derselben oder auch zum Bearbeiten. Wer mehr brauchte, konnte sich noch des Dictionary-Objekts bedienen, was aber schon das Einbinden eines weiteren Verweises erforderte. Unter .NET gibt es bei Auflistungsklassen einen wichtigen Unterschied: nicht-generische Auflistungsklassen, die nicht stark typisiert sind und generische Auflistungsklassen, die stark typisiert sind. Der vorliegende Artikel betrachtet die wichtigsten nicht-generischen Auflistungsklassen und ihre Eigenschaften.\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/Nichtgenerische_Auflistungen_unter_VBNET\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"datePublished\":\"2021-06-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#website\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/\",\"name\":\"Datenbankentwickler\",\"description\":\"Das Magazin f\\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Nicht-generische Auflistungen unter VB.NET - Visual Basic Entwickler","description":"Unter VB6\/VBA waren die bekanntesten und sofort einsetzbaren Auflistungsklassen das Array und die Collection. Sie boten einfache M\u00f6glichkeiten zum Hinzuf\u00fcgen von Objektverweisen oder Werten, zum L\u00f6schen derselben oder auch zum Bearbeiten. Wer mehr brauchte, konnte sich noch des Dictionary-Objekts bedienen, was aber schon das Einbinden eines weiteren Verweises erforderte. Unter .NET gibt es bei Auflistungsklassen einen wichtigen Unterschied: nicht-generische Auflistungsklassen, die nicht stark typisiert sind und generische Auflistungsklassen, die stark typisiert sind. Der vorliegende Artikel betrachtet die wichtigsten nicht-generischen Auflistungsklassen und ihre Eigenschaften.","canonical_url":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#blogposting","name":"Nicht-generische Auflistungen unter VB.NET - Visual Basic Entwickler","headline":"Nicht-generische Auflistungen unter VB.NET","author":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"publisher":{"@id":"https:\/\/vbentwickler.de\/#organization"},"image":{"@type":"ImageObject","url":"..\/fileadmin\/_temp_\/2021_03\/pic_267_001.png","@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#articleImage"},"datePublished":"2021-06-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00","inLanguage":"de-DE","mainEntityOfPage":{"@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#webpage"},"isPartOf":{"@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#webpage"},"articleSection":"2021, 3\/2021, Entity Framework, PowerApps, VB-Grundlagen"},{"@type":"BreadcrumbList","@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/vbentwickler.de#listItem","position":1,"name":"Home","item":"https:\/\/vbentwickler.de","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/#listItem","name":"2021"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/#listItem","position":2,"name":"2021","item":"https:\/\/vbentwickler.de\/category\/2021\/","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/3\/2021\/#listItem","name":"3\/2021"},"previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/3\/2021\/#listItem","position":3,"name":"3\/2021","item":"https:\/\/vbentwickler.de\/category\/2021\/3\/2021\/","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#listItem","name":"Nicht-generische Auflistungen unter VB.NET"},"previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/#listItem","name":"2021"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#listItem","position":4,"name":"Nicht-generische Auflistungen unter VB.NET","previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2021\/3\/2021\/#listItem","name":"3\/2021"}}]},{"@type":"Organization","@id":"https:\/\/vbentwickler.de\/#organization","name":"Datenbankentwickler","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","url":"https:\/\/vbentwickler.de\/","logo":{"@type":"ImageObject","url":"https:\/\/vbentwickler.de\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#organizationLogo","width":664,"height":225},"image":{"@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author","url":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","width":96,"height":96,"caption":"Andr\u00e9 Minhorst"}},{"@type":"WebPage","@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#webpage","url":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/","name":"Nicht-generische Auflistungen unter VB.NET - Visual Basic Entwickler","description":"Unter VB6\/VBA waren die bekanntesten und sofort einsetzbaren Auflistungsklassen das Array und die Collection. Sie boten einfache M\u00f6glichkeiten zum Hinzuf\u00fcgen von Objektverweisen oder Werten, zum L\u00f6schen derselben oder auch zum Bearbeiten. Wer mehr brauchte, konnte sich noch des Dictionary-Objekts bedienen, was aber schon das Einbinden eines weiteren Verweises erforderte. Unter .NET gibt es bei Auflistungsklassen einen wichtigen Unterschied: nicht-generische Auflistungsklassen, die nicht stark typisiert sind und generische Auflistungsklassen, die stark typisiert sind. Der vorliegende Artikel betrachtet die wichtigsten nicht-generischen Auflistungsklassen und ihre Eigenschaften.","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/vbentwickler.de\/#website"},"breadcrumb":{"@id":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/#breadcrumblist"},"author":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"creator":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"datePublished":"2021-06-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00"},{"@type":"WebSite","@id":"https:\/\/vbentwickler.de\/#website","url":"https:\/\/vbentwickler.de\/","name":"Datenbankentwickler","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","inLanguage":"de-DE","publisher":{"@id":"https:\/\/vbentwickler.de\/#organization"}}]},"og:locale":"de_DE","og:site_name":"Visual Basic Entwickler - Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","og:type":"article","og:title":"Nicht-generische Auflistungen unter VB.NET - Visual Basic Entwickler","og:description":"Unter VB6\/VBA waren die bekanntesten und sofort einsetzbaren Auflistungsklassen das Array und die Collection. Sie boten einfache M\u00f6glichkeiten zum Hinzuf\u00fcgen von Objektverweisen oder Werten, zum L\u00f6schen derselben oder auch zum Bearbeiten. Wer mehr brauchte, konnte sich noch des Dictionary-Objekts bedienen, was aber schon das Einbinden eines weiteren Verweises erforderte. Unter .NET gibt es bei Auflistungsklassen einen wichtigen Unterschied: nicht-generische Auflistungsklassen, die nicht stark typisiert sind und generische Auflistungsklassen, die stark typisiert sind. Der vorliegende Artikel betrachtet die wichtigsten nicht-generischen Auflistungsklassen und ihre Eigenschaften.","og:url":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/","og:image":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","og:image:secure_url":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","article:published_time":"2021-11-10T09:12:16+00:00","article:modified_time":"-001-11-30T00:00:00+00:00","twitter:card":"summary_large_image","twitter:title":"Nicht-generische Auflistungen unter VB.NET - Visual Basic Entwickler","twitter:description":"Unter VB6\/VBA waren die bekanntesten und sofort einsetzbaren Auflistungsklassen das Array und die Collection. Sie boten einfache M\u00f6glichkeiten zum Hinzuf\u00fcgen von Objektverweisen oder Werten, zum L\u00f6schen derselben oder auch zum Bearbeiten. Wer mehr brauchte, konnte sich noch des Dictionary-Objekts bedienen, was aber schon das Einbinden eines weiteren Verweises erforderte. Unter .NET gibt es bei Auflistungsklassen einen wichtigen Unterschied: nicht-generische Auflistungsklassen, die nicht stark typisiert sind und generische Auflistungsklassen, die stark typisiert sind. Der vorliegende Artikel betrachtet die wichtigsten nicht-generischen Auflistungsklassen und ihre Eigenschaften.","twitter:image":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png"},"aioseo_meta_data":{"post_id":"55000267","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2024-01-30 16:14:30","updated":"2026-05-16 08:52:42","ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\/category\/2021\/\" title=\"2021\">2021<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\/category\/2021\/3\/2021\/\" title=\"3\/2021\">3\/2021<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tNicht-generische Auflistungen unter VB.NET\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/vbentwickler.de"},{"label":"2021","link":"https:\/\/vbentwickler.de\/category\/2021\/"},{"label":"3\/2021","link":"https:\/\/vbentwickler.de\/category\/2021\/3\/2021\/"},{"label":"Nicht-generische Auflistungen unter VB.NET","link":"https:\/\/vbentwickler.de\/Nichtgenerische_Auflistungen_unter_VBNET\/"}],"_links":{"self":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000267","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/comments?post=55000267"}],"version-history":[{"count":0,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000267\/revisions"}],"wp:attachment":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/media?parent=55000267"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/categories?post=55000267"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/tags?post=55000267"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/yst_prominent_words?post=55000267"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}