Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 在列表中查找值(列表的(整数的))_Vb.net_List - Fatal编程技术网

Vb.net 在列表中查找值(列表的(整数的))

Vb.net 在列表中查找值(列表的(整数的)),vb.net,list,Vb.net,List,我有一个名为selectedskills的整数列表,数据如下所示 (0) (0) 79 (1) 1 (1) (0) 83 (1) 3 (2) (0) 113 (1) 4 等等。如何首先确定列表是否包含,比如83,然后再查找主索引(如果找到)。所以在本例中,如果在整个列表中找到83,我想找到索引1。基本上,我如何查看第二级索引0是否包含83,然后返回主索引 希望这是有意义的。您可以使用as谓词作为FindIndex的谓词: 如果未找到匹配项,则返回-1作为索引

我有一个名为selectedskills的整数列表,数据如下所示

(0)
   (0) 79
   (1) 1
(1)
   (0) 83
   (1) 3
(2)
   (0) 113
   (1) 4
等等。如何首先确定列表是否包含,比如83,然后再查找主索引(如果找到)。所以在本例中,如果在整个列表中找到83,我想找到索引1。基本上,我如何查看第二级索引0是否包含83,然后返回主索引

希望这是有意义的。

您可以使用as谓词作为FindIndex的谓词:

如果未找到匹配项,则返回-1作为索引。此代码假定selectedskills的每个元素都有一个至少包含一个元素的内部列表。如果不是这样,请添加检查

Dim index = selectedskills.FindIndex(Function(innerList) innerList IsNot Nothing AndAlso _
    innerList.Count > 0 AndAlso _
    innerList(0) = 83)
如果内部列表始终有2个条目,则还可以使用


你试过什么?我们无法帮助编写代码我们看不清楚我已经尝试了selectedskills\u 0.ContainesRowskill\u id,但我认为这将只查看主索引0我是否必须遍历每个主索引才能找到与我要查找的值相等的子索引0?是的。顺便说一下,最简单的方法是使用,在示例中,Next indexA和Next indexB都可以短接到Next。很抱歉,您只想检查子列表的第一个索引0。在这种情况下,您只需要一个循环来迭代外部列表,该循环检查每个子列表的项0。阅读我上面链接的整篇文章。
Dim index = selectedskills.FindIndex(Function(innerList) innerList IsNot Nothing AndAlso _
    innerList.Count > 0 AndAlso _
    innerList(0) = 83)
Dim selectedskills = New List(Of (Integer, Integer)) From { (79, 1), (83, 3), (113, 4) }

Dim index = selectedskills.FindIndex(Function(element) element.Item1 = 83)