我正在使用類似於下面的結構。我需要遍歷'Persons'ArrayList並將每個薪水設置爲100,同時保持LastNames不變。VB.Net如何更新ArrayList中的每個條目?
Structure Person
Dim LastName As String
Dim salary As Integer
End Structure
public class Test
public Shared Sub Main
Dim Persons As New ArrayList
Dim Person As New Person
With Person
.LastName = "Smith"
.salary = 50
End With
Persons.Add(Person)
With Person
.LastName = "Jones"
.salary = 20
End With
Persons.Add(Person)
With Person
.LastName = "Brown"
.salary = 80
End With
Persons.Add(Person)
End Sub
End class
我意識到一個簡單的For Each循環在這裏不起作用。我可以將每個'Person'複製到第二個臨時數組列表中,然後刪除原數據列表中的條目,但我無法弄清楚如何更改每個人的工資,並在保留'LastName'的同時'再次'添加'價值觀就像它們最初一樣。
具有合適屬性的類比這裏的結構更合適;同樣,一個類型化的集合像一個'List(Of T)'來代替無類型的ArrayList。然後循環 – Plutonix
@Plutonix說什麼。 ArrayList屬於C#沒有泛型的日子。它已棄用,獲得列表。除非您必須與使用它的舊API接口,否則不應在目標.NET> = 2.0的新代碼中使用ArrayList。從http://stackoverflow.com/a/2309699/832052 –
djv
[在類和結構之間選擇](https://msdn.microsoft.com/en-us/library/ms229017(v = vs.110).aspx) – Plutonix