Arrays VB.Net如何查找数组中的一个数字是否超过三次

Arrays VB.Net如何查找数组中的一个数字是否超过三次,arrays,vb.net,duplicates,Arrays,Vb.net,Duplicates,我用的是Visual Basic, 我的good有一个问题,我有一个包含9个数字的数组,所以我希望数组中的相同数字不能超过3次 Dim PArray= New Integer() {30, 50, 100, 200, 500, 1000, 2000, 5000} Dim T1(8) As Integer Dim a As Integer = r.Next(0, 8) T1(i) = PArray(a) 正如您看到的T1数组是从PArray填充的,我想要的是不要用3个相同的数字填充,如: 前任。

我用的是Visual Basic, 我的good有一个问题,我有一个包含9个数字的数组,所以我希望数组中的相同数字不能超过3次

Dim PArray= New Integer() {30, 50, 100, 200, 500, 1000, 2000, 5000}
Dim T1(8) As Integer
Dim a As Integer = r.Next(0, 8)
T1(i) = PArray(a)
正如您看到的T1数组是从PArray填充的,我想要的是不要用3个相同的数字填充,如: 前任。 T1={30,50,30500,30,5020001002000}'30是X的三倍我不想要这个
因此,如果30被PArray中的其他数字替换,但要确保其他数字也不会在数组中重复三次…

请检查集合是否有3,如果没有,请添加下一个数字

Static rnd As New Random
Dim PArray = {30, 50, 100, 200, 500, 1000, 2000, 5000}
Dim T1 As New List(Of Integer)
Do Until T1.Count = 8
   Dim rndValue = PArray(rnd.Next(0, PArray.Count))
   Dim cnt = N1.Where(Function(i) i = rndValue).Count
   If Not cnt = 3 Then
     T1.Add(rndValue)
   End If
Loop

到底是什么问题?如何确定一个数字在数组中是否超过三倍,或者如何创建这样的随机数组或其他什么?如何确定一个数字是否超过两倍,,,,,,允许两倍,允许三倍。这里的最佳答案取决于当您发现“坏”数时希望发生什么。在你澄清之前,它是“太宽”的。要用Parray的新的替换。。。所以我总共有8个数字,数组将用它们填充,但我不想得到三个相同的数字。我得到了一个异常:{“找不到类型为“Integer()”的公共成员“Count”。}。。。如果我必须告诉你,我声明Parray和T1不在我的Sub。。因为我需要在其他潜艇上给他们打电话…效果很好,我刚刚在潜艇内外两次宣布帕雷。。你是国王