在 C# 中声明多维列表

Muhammad Maisam Abbas 2024年2月16日
  1. 在 C# 中用 List<List<T>> 声明 2D 列表
  2. 使用 C# 中的类列表声明多维列表
  3. 在 C# 中使用元组列表声明多维列表
在 C# 中声明多维列表

在本教程中,我们将讨论在 C# 中声明多维列表的方法。

在 C# 中用 List<List<T>> 声明 2D 列表

遗憾的是,没有内置的方法在 C# 中声明多维列表。因此,要实现此目标,我们必须依靠一些用户定义的方法。我们可以使用 C# 中的 List<List<T>> 符号来声明一个列表,其中 T 指定列表中变量的类型。以下代码示例向我们展示了如何使用 C# 中的 List<List<T>> 标记声明 2D 列表。

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();
      }
    }
  }

输出:

Person Description
Person Description
Person Description

我们用 C# 中的 List<List<string>> 标记声明了一个二维变量列表列表 Person。要在列表中输入数据,我们必须将数据存储到另一个 string 变量列表中,然后使用 Person.Add() 函数将该对象添加到 Person 列表中。我们使用嵌套循环输出列表。该方法的缺点是它仅适用于 2D 数组,并且其中只能包含 1 个数据类型的元素。

使用 C# 中的类列表声明多维列表

如果要创建多个数据类型的列表,可以在 C# 中声明类对象的列表。众所周知,可以包含多个具有不同数据类型的变量。以下代码示例向我们展示了如何通过在 C# 中创建对象列表来声明 2D 列表。

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);
      }
    }
  }

输出:

Person
Description
Person
Description
Person
Description

我们通过在 C# 中创建 Person 类的列表来声明 2D 列表 People。要在列表中输入数据,我们必须将数据存储到 Person 类的对象中,然后使用 People.Add() 函数将该对象添加到 People 列表中。通过这种方法,我们可以在列表中包含多个具有不同数据类型的元素。

在 C# 中使用元组列表声明多维列表

如果我们要在列表中使用多种数据类型,但又不想创建一个单独的类来存储所有变量,则还可以声明一个元组列表。我们可以用 C# 中的 List<(T1, T2)> 声明一个元组列表,其中 T1T2 分别是该元组的第一个和第二个元素的数据类型。

下面的代码示例向我们展示了如何在 C# 中用元组列表声明一个多维列表。

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);
      }
    }
  }

输出:

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

我们用 C# 中的 List<(string, string)> 标记声明了元组 Person 的列表。我们以元组的形式在 Person 列表中输入数据,并通过 foreach 循环显示它。

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

相关文章 - Csharp List