C# 使用元组C循环列表#
我在C#中有一个名为MyList的列表:C# 使用元组C循环列表#,c#,.net,list,tuples,C#,.net,List,Tuples,我在C#中有一个名为MyList的列表: List<Tuple<string, int, int>> MyList= new List<Tuple<string, int, int>>() { Tuple.Create("Cars", 22, 3), Tuple.Create("Cars", 28, 5), Tuple.Create("Planes", 33, 6)
List<Tuple<string, int, int>> MyList= new List<Tuple<string, int, int>>()
{
Tuple.Create("Cars", 22, 3),
Tuple.Create("Cars", 28, 5),
Tuple.Create("Planes", 33, 6)
};
List MyList=new List()
{
Tuple.Create(“Cars”,22,3),
Tuple.Create(“Cars”,28,5),
Tuple.Create(“平面”,33,6)
};
我想按照上面填写的顺序循环浏览整个列表,并能够逐个获得每个列表项的值,如
Cars,22,3
。我该怎么做?我想我必须以某种方式使用ForEach
。你可以使用简单的ForEach
循环,Item1
、Item2
和Item3
表示具有相应类型的未命名元组项
foreach(MyList中的变量项)
{
字符串名称=item.Item1;
int值=item.Item2;
int something=item.Item3;
}
您也可以切换到,可从C#7获得。它们更具可读性,允许为元组项定义自定义名称并使用解构
var MyList=new List()
{
(“汽车”,22,3),
(“汽车”,28,5),
(“飞机”,33、6)
};
foreach(MyList中的var项)
{
var name=item.name;
var值=项目价值;
}
这是一个易于理解且简单的解决方案,可以帮助您。您可以对循环使用
- 项目1(
字符串
)
- 项目2(
int
)
- 项目3(
int
)
元组
项
是否按照您放置它们的顺序和格式
下面的代码是循环
for (int i = 0; i < MyList.Count; i++)
{
string item1 = MyList[i].Item1;
int item2 = MyList[i].Item2;
int item3 = MyList[i].Item3;
}
for(int i=0;i
您通常会编写一个循环,以便在集合上循环,是的。你尝试过什么,但什么不起作用?循环确实是你需要的!你可以切换到命名元组,它更清晰易读。我知道我需要一个循环。但我不知道怎么写。这就是我所做的:''MyList.ForEach(Tuple-Tuple){}`@KGB91这不是一个循环。这是试图用不正确的lambda语法使用ForEach
方法foreach(MyList中的var…){…}
是一个循环,它可以工作,但我得到当使用命名元组时,名称空间“System”中不存在类型或名称空间名称“ValueTuple”。@KGB91可从C#7和.NET 4.6.1获得。您可以尝试安装软件包,如果您没有从box@KGB91,你可以用我更简单的答案。是的,但是用下面的代码填充元组更容易:)