在Visual Basic中从数组中获取不同的值(作为String而不是List或ArrayList)

时间:2019-02-20 12:43:37

标签: arrays vb.net duplicates distinct-values

单击按钮时,所有标签值都存储在数组中

Dim myArr(3) As String           
myArr(0) = 1.Text  
myArr(1) = 2.Text
myArr(2) = 3.Text  
myArr(3) = 4.Text 

我正在尝试从标签数组中删除重复项,我看过有关distinct的教程,但其中显示了List和ArrayList。我还编写了从数组中删除重复项的代码

Dim testDist As String = myArr.Distinct().ToString  
           For Each NOW As String In testDist  
                Dim labelShow As String = String.Join(",", NOW)  
                Label7.Text = labelShow  
            Next  

但是它仅显示]作为输出。你能帮我么。

1 个答案:

答案 0 :(得分:1)

您在String.Join上走的路正确,但是您应该直接通过Distinct的结果:

Label7.Text = String.Join(",", myArr.Distinct())

作为记录,Disinct返回一个IEnumerable(Of String),即可以枚举的列表。 String.Join基本上将接受StringsObjects的所有可枚举列表,包括数组或属类Lists。如果项目不是Strings,则将调用其ToString方法。