如何构建可变数组

本文关键字:数组 构建 何构建 | 更新日期: 2023-09-27 18:08:03

我开始使用visual studio以WPF的形式学习c#,所以我的编码知识在语言方面非常有限,但在理解方面非常先进。

我以前处理过数组,但那是很久以前的事了。然而,我可以回忆起简单的mp3播放列表标签数组:"歌名"、"艺人"、"年份"等。我记得我讨论过如何使它具有动态性,但这些知识已经丢失了。

我的情况如下:

我想构建一个程序,可以调用特定的X和Y数组点,并显示整行。

下面是一个例子:在代码中,我想声明一个字符串数组,其中表示以下位置:

[var0, var1, var2, var3]

然后我想使用一个基于前一个"键"的预构建数组,以便位置0,1,2和3链接到这些变量。

然后,在程序本身中,思想是当我调用var1时,它从特定的数组水平行输出var0, var1, var2和var3。

下面是使用相同previous键的另一个示例:

["Never gonna give you up", "Rick Astley", "1990", "Troll"]
["Together forever", "Rick Astley", "1990", "Pop"]
["99 Red Balloons", "Nena", "1998", "German"]
["Can't get you out of my head", "Kylie Minogue", "1995", "Pop"]

我想查找位置#2中所有与"Rick Astley"匹配的元素;输出应为:

["Never gonna give you up", "Rick Astley", "1990", "Troll"]
["Together forever", "Rick Astley", "1990", "Pop"]

如果我改变列表,但是,变量仍然保持相同的方式,除非我改变它们的键。

Thank you

PS:我不想让任何人制作整个程序,只是如何声明变量和找到关键变量。

如何构建可变数组

可以使用Dictionary<TKey, TValue>

这将允许您在每个键上存储一个类或变量。

例子:

    var variables = new Dictionary<int, string[]>();
    variables.Add(0, new string[] { "Never gonna give you up", "Rick Astley", "1990", "Troll" });
    variables.Add(1, new string[] { "Together forever", "Rick Astley", "1990", "Pop" });
    variables.Add(2, new string[] { "99 Red Balloons", "Nena", "1998", "German" });
    variables.Add(3, new string[] { "Can't get you out of my head", "Kylie Minogue", "1995", "Pop" });
    foreach (var variable in variables.Where(v => v.Value.Contains("Rick Astley")))
    {
        foreach (var text in variable.Value)
        {
            Console.Write($"{text}, ");
        }
        Console.WriteLine();
    }
    Console.Read();
输出:

Never gonna give you up, Rick Astley, 1990, Troll,
Together forever, Rick Astley, 1990, Pop,