0、前提條件:有一個數(shù)字列表,或者數(shù)字段范圍(1~100);
10多年建站經(jīng)驗, 網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)客戶的見證與正確選擇。創(chuàng)新互聯(lián)提供完善的營銷型網(wǎng)頁建站明細(xì)報價表。后期開發(fā)更加便捷高效,我們致力于追求更美、更快、更規(guī)范。
1、Randomize '初始化隨即函數(shù);
2、用列表或者數(shù)組存放待選數(shù)據(jù),比如長度為60;
3、利用隨機(jī)函數(shù)抽取數(shù)字對應(yīng)的數(shù)據(jù) num=Rnd*60,Ret_Value=List(num),將選取結(jié)果存入結(jié)果單元;
4、然后從列表或者數(shù)組中去掉這個數(shù)據(jù),(避免重復(fù)選中);
5、然后再運(yùn)行3;
6、直到滿意為止。
Dim array1() As String
Dim array2() As Boolean
Dim i As Integer
Dim j As Integer
Dim str1 As String = "a,c,c,c,a,b,c,d,f,eee,eee"
array1 = Split(str1, ",")
str1 = ""
ReDim array2(UBound(array1))
For i = 0 To UBound(array1)
array2(i) = False
Next
For i = 0 To UBound(array1) - 1
If array2(i) = False Then
For j = i + 1 To UBound(array1)
If array1(i) = array1(j) And array2(j) = False Then
array2(j) = True
End If
Next j
End If
Next i
For i = 0 To UBound(array1)
If array2(i) = False Then
str1 = str1 array1(i) ","
End If
Next i
If str1 "" Then
str1 = Strings.Left(str1, Len(str1) - 1)
End If
簡單。在程序里設(shè)置一個數(shù)組變量,成員不定,每生成一個隨機(jī)數(shù)就保存在數(shù)組元素里。
在程序末尾加一行if判斷語句,如果新生成的數(shù)等于某個數(shù)組元素,則重新生成隨機(jī)數(shù);否則放行,直接輸出。
比如數(shù)組a。里面有5個值,其中有3個是重復(fù)的?
如果這樣的話,很好辦哦。
新建一個數(shù)組b,然后遍歷要去除的數(shù)組a,
從a中把每一個都取出來,和新建的b里面的去比,如果有相同的,則不放入b,
否則就放入數(shù)組b,直到循環(huán)結(jié)束。
Private Sub Text1_Change()
Private Sub Text2_Change()
兩個事件中 同時判斷兩個文本框是否為初值(或者寫成一個sub子過程 在事件中調(diào)用也可以),如果符合條件,就禁用增加按鈕 ,否則就解封
本文標(biāo)題:vb.net不重復(fù)數(shù)組的簡單介紹
分享鏈接:http://jinyejixie.com/article40/dssegeo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、網(wǎng)站設(shè)計公司、動態(tài)網(wǎng)站、網(wǎng)站排名、全網(wǎng)營銷推廣、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)