任何人都知道如何将新列表添加到另一个列表中,无法预定义新列表。
例如,在获得用户输入后,我将执行以下操作
List<List<string>> ListA = new List<List<string>>();
foreach (List<string> subList in ListA)
{
foreach (var value in subList)
{
if(value != INPUT)
{
// ListA needs to creates a new list with value INPUT
}
}
}
答案 0 :(得分:2)
由于您无法修改当前枚举的集合,例如。 ToArray()
:
foreach (List<string> subList in ListA.ToArray())
{
foreach (var value in subList)
{
if(value != INPUT)
(
ListA.Add(new List<string>() { INPUT });
}
}
}
答案 1 :(得分:1)
您可以使用linq
执行此操作:
包含命名空间:
using System.Linq;
试试这个:
var result = ListA.Select(x => x.Where(k => k != INPUT).ToList()).ToList();
答案 2 :(得分:0)
List<List<string>> ListA = new List<List<string>>();
List<List<string>> ListsToAdd = new List<List<string>>();
foreach (List<string> subList in ListA)
{
foreach (var value in subList)
{
if(value != INPUT)
(
List<string> list = new List<string>();
list.Add(INPUT);
ListsToAdd.Add(list);
}
}
}
ListA.AddRange(ListsToAdd);