您能帮我吗?
我有5个字符串列表,比方说A,B,C,D和E:
A has 6 items
B has 5 items
C has 9 items
D has 2 items
E has 7 items
我需要排序或查找“ C”作为具有最多项目的列表。
我需要在winform中创建选项卡,并且需要在每个选项卡上以编程方式创建datagridview。列表中的最大数量将是我需要创建的最大选项卡。并且在每个选项卡上,每个列表成员都会有一项。当然,并非所有选项卡都会有来自成员的项目,而该项目的项目数量很少。
以前,II的工作是遍历表和数据网格,以构造和解决该问题以避免对列表进行排序,因为我不知道在这些列表上找到最大项目。
更新:在安德鲁的帮助下
` Dim z As New List(Of List(Of String))
Dim a As New List(Of String)
a.Add("a1")
a.Add("a2")
a.Add("a3")
Dim b As New List(Of String)
b.Add("b1")
b.Add("b2")
b.Add("b3")
b.Add("b4")
b.Add("b5")
Dim c As New List(Of String)
c.Add("c1")
c.Add("c2")
c.Add("c3")
c.Add("c3")
z.Add(a)
z.Add(b)
z.Add(c)
Dim maxItems = z.Max(Function(p) p.Count)
MessageBox.Show(maxItems)`
答案 0 :(得分:1)
如果您需要的只是最长列表的长度...
Private A As New List(Of String) From {"Mathew", "Mark", "Luke", "John"}
Private B As New List(Of String) From {"Apples", "Oranges", "Pears"}
Private C As New List(Of String) From {"Haddock", "Salmon"}
Private D As New List(Of String) From {"Great Dane", "Poodle", "Bulldog", "Spaniel", "Golden Retriever"}
Private Sub GetMaxListLength()
Dim E() As Integer = {A.Count, B.Count, C.Count, D.Count}
Dim max = E.Max
MessageBox.Show(max.ToString)
End Sub
答案 1 :(得分:0)
玛丽和安德鲁的工作都很完美:
Dim z As New List(Of List(Of String))
Dim a As New List(Of String)
a.Add("a1")
a.Add("a2")
a.Add("a3")
Dim b As New List(Of String)
b.Add("b1")
b.Add("b2")
b.Add("b3")
b.Add("b4")
b.Add("b5")
Dim c As New List(Of String)
c.Add("c1")
c.Add("c2")
c.Add("c3")
c.Add("c3")
z.Add(a)
z.Add(b)
z.Add(c)
Dim eb() As Integer = {a.Count, b.Count, c.Count}
Dim max = eb.Max
Dim maxItems = z.Max(Function(p) p.Count)
MessageBox.Show(max)