Deklarieren Sie eine mehrdimensionale Liste in C#

Muhammad Maisam Abbas 16 Februar 2024
  1. Deklarieren Sie eine 2D-Liste mit List<List<T>> in C#
  2. Deklarieren Sie eine mehrdimensionale Liste mit einer Liste von Klassen in C#
  3. Deklarieren Sie eine mehrdimensionale Liste mit einer Liste von Tupeln in C#
Deklarieren Sie eine mehrdimensionale Liste in C#

In diesem Tutorial werden Methoden zum Deklarieren einer mehrdimensionalen Liste in C# erläutert.

Deklarieren Sie eine 2D-Liste mit List<List<T>> in C#

Leider gibt es keine integrierte Methode zum Deklarieren einer mehrdimensionalen Liste in C#. Um dieses Ziel zu erreichen, müssen wir uns auf einige benutzerdefinierte Ansätze verlassen. Wir können eine Liste von Listen mit der Notation List<List<T>> in C# deklarieren, wobei T den Variablentyp in der Liste angibt. Das folgende Codebeispiel zeigt uns, wie wir eine 2D-Liste mit der Notation List<List<T>> in C# deklarieren können.

using System;
using System.Collections.Generic;

namespace multidimensional_list {
  class Program {
    static void Main(string[] args) {
      List<List<string>> Person = new List<List<string>>();
      for (int i = 0; i < 3; i++) {
        List<string> Data = new List<string>();
        Data.Add("Person ");
        Data.Add("Description ");
        Person.Add(Data);
      }
      foreach (var list in Person) {
        foreach (var element in list) {
          Console.Write(element);
        }
        Console.WriteLine();
      }
    }
  }

Ausgabe:

Person Description
Person Description
Person Description

Wir haben eine 2D-Liste Person von Zeichenkettenvariablen mit der Notation List<List<string>> in C# deklariert. Um Daten in die Liste einzugeben, müssen wir die Daten in einer anderen Liste der Variablen string speichern und dieses Objekt dann mit der Funktion Person.Add() zur Liste Person hinzufügen. Wir geben die Liste mit einer verschachtelten Schleife aus. Der Nachteil dieser Methode ist, dass sie nur für 2D-Arrays funktioniert und nur Elemente eines Datentyps enthalten können.

Deklarieren Sie eine mehrdimensionale Liste mit einer Liste von Klassen in C#

Wenn wir eine Liste mit mehreren Datentypen erstellen möchten, können wir eine Liste mit Klassenobjekten in C# deklarieren. Wie wir wissen, kann eine Klasse mehrere Variablen unterschiedlicher Datentypen enthalten. Das folgende Codebeispiel zeigt uns, wie wir eine 2D-Liste deklarieren können, indem wir eine Liste von Objekten in C# erstellen.

using System;
using System.Collections.Generic;

namespace multidimensional_list {
  public class Person {
    public string Name { get; set; }
    public string Description { get; set; }
  }
  class Program {
    static void Main(string[] args) {
      List<Person> People = new List<Person>();
      for (int i = 0; i < 3; i++) {
        Person p = new Person();
        p.Name = "Person ";
        p.Description = "Description ";
        People.Add(p);
      }
      foreach (var obj in People) {
        Console.WriteLine(obj.Name);
        Console.WriteLine(obj.Description);
      }
    }
  }

Ausgabe:

Person
Description
Person
Description
Person
Description

Wir haben eine 2D-Liste People deklariert, indem wir eine Liste der Klassen Person in C# erstellt haben. Um Daten in die Liste einzugeben, müssen wir die Daten in einem Objekt der Klasse Person speichern und dieses Objekt dann mit der Funktion People.Add() zur Liste People hinzufügen. Mit diesem Ansatz können mehrere Elemente unterschiedlicher Datentypen in der Liste enthalten sein.

Deklarieren Sie eine mehrdimensionale Liste mit einer Liste von Tupeln in C#

Wenn wir mehrere Datentypen in unserer Liste verwenden möchten, aber keine separate Klasse zum Speichern aller Variablen erstellen möchten, können wir auch eine Liste von Tupeln deklarieren. Wir können eine Liste von Tupeln mit der Notation List<(T1, T2)> in C# deklarieren, wobei T1 und T2 die Datentypen des ersten bzw. zweiten Elements des Tupels sind.

Das folgende Codebeispiel zeigt, wie eine mehrdimensionale Liste mit einer Liste von Tupeln in C# deklariert wird.

using System;
using System.Collections.Generic;

namespace multidimensional_list {
  class Program {
    static void Main(string[] args) {
      List<(string, string)> Person = new List<(string, string)>();
      for (int i = 0; i < 3; i++) {
        Person.Add(("Person ", "Description "));
      }
      foreach (var list in Person) {
        Console.WriteLine(list);
      }
    }
  }

Ausgabe:

(Person , Description )
(Person , Description )
(Person , Description )

Wir haben eine Liste der Tupel Person mit der Notation List<(string, string)> in C# deklariert. Wir geben Daten in Form von Tupeln in die Liste Person ein und zeigen sie mit einer foreach-Schleife an.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Verwandter Artikel - Csharp List