Vb.net 在列表中查找值(列表的(整数的))
我有一个名为selectedskills的整数列表,数据如下所示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作为索引
(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)