2011-10-14 107 views
2

我正在學習列表並添加/刪除。在下面的代碼中,我創建一個列表,生成一個隨機數 - 然後要永久刪除列表中的號碼:瞭解列表添加/刪除值

cardsLST.AddAll(Array As Int(1,2,3,4,5)) 'create the list 
s = Rnd(1,6) 'generate a random number 1-5 
Msgbox(s,"") 'display the randomly generated number 
Msgbox(cardsLST,"") 'display the current list members 
cardsLST.RemoveAt(s) 'remove the generated value from the list 
Msgbox(strtCardsLST,"") 'display the updated list members 

我不能讓數字感...例如... 如果我生成1,則從列表中刪除2。 如果我生成一個5,我得到一個出界異常

回答

3

列表和數組的indeces是從零開始讓你列表索引值從0到4

0

cardsLST.AddAll(Array As Int(1,2,3,4,5))等同於以下內容:

cardsLST.insertAT(0,"1") 'cardsLST.isert(Index as int, Value as object) 
cardsLST.insertAT(1,"2") 
cardsLST.insertAT(2,"3") 
cardsLST.insertAT(3,"4") 
cardsLST.insertAT(4,"5") 

您可以使用隨機數發生器來產生卡的索引值與 s = Rnd(0,5)生成一個隨機數0-4這樣

cardsLST.RemoveAt(3) 

將移除卡片「4」