For循环遍历具有非常相似名称的List,而不重写代码

本文关键字:List 代码 重写 遍历 循环 相似 非常 For | 更新日期: 2023-09-27 18:16:27

我有一个字符串列表,其中每个字符串都是列表的最终文本。

例如

List<string> textEnds = New List<string>()
textEnds.Add("Q1"); textEnds.Add("Q2");

我已经声明了这些列表:

List<List<string>> someTextQ1 = new List<List<string>>();
List<List<string>> someTextQ2 = new List<List<string>>();

对于上面的每个双列表,我显示一个简单的html表。理想情况下,我不想保持复制粘贴html代码100次,只是因为Q1更改为Q2在双列表名称。有没有办法写一个for循环,这样我就可以这样做(显然下面的代码不起作用,只是一个概念):

for(int i = 0; i < textEnds.Count; i++){
     <table>
          for(int j = 0; j < someText + textEnds[i] + .Count; j++){
          }
     </table>
}

For循环遍历具有非常相似名称的List,而不重写代码

要抽象someTextQ1someTextQ2等,只需要另一个列表。

var someTexts = new List<List<List<string>>>();

这开始看起来…递归,所以您可能想要考虑递归数据结构:

class SomeText
{
    string Text { get; set; }
    List<string> SubTexts { get; set; }
}

递归结构的好处是可以随心所欲地嵌套。