2016-08-05 46 views
1

我想要做的是使用5个文本框从用户获取数字输入,然后将这些数字放入数组中。如何确定数组中是否有重复值

我该如何去确定值是否在数组中重复?就好像这个数组最后是: {2,3,2,8,4} 我不确定如何让程序本质上说“有2个值为2的文本框”。

感谢。

+0

您可以根据其他4个文本框中的值检查五个文本框中的每一个值,以查看它们是否具有相同的值。 –

+0

对于集合中的每个不同元素,请计算集合中出现的次数。 – David

+1

检查这个答案:http://stackoverflow.com/questions/7365211/fastest-way-to-detect-duplicate-numbers-on-array-vb-net-2005而这一个:http://stackoverflow.com/问题/ 30547427 /如何找到和计数重复数字在字符串数组在虚拟网络 –

回答

1

下面是一个简单的例子,你可以使用一个使用LINQ:

Sub Main() 
    Dim myArray As Integer() = {2, 3, 2, 8, 4} 

    For Each group In myArray _ 
     .GroupBy(Function(i) i) _ 
     .Where(Function(grp) grp.Count > 1) 

     Console.WriteLine($"There are {group.Count} textboxes with the value {group.Key}.") 
    Next 
End Sub 
-1

这应该做的伎俩,假设两个数组是同一类型:

Dim hasDupes As Boolean 
Dim array1 As Integer() = {3, 5, 7, 11, 13} 
Dim array2 As Integer() = {1, 3, 5, 7, 9, 11, 13} 

hasDupes = array1.Intersect(array2).Any() 

如果有任何重复项目,hasDupes将评估为true。

+0

OP是在谈论1阵列,而不是两个。 – antikbd