Heim > Artikel > Backend-Entwicklung > Detaillierte Erläuterung des .NET Framework-ArrayList-Codes
Bei der Einführung der Datenstruktur Array im vorherigen Abschnitt haben wir erwähnt, dass sie für jede Dimension statisch ist Die Zahl Die Anzahl der Elemente muss zur Kompilierungszeit eindeutig bestimmt werden und ihr Typ muss stark typisiert sein.
In diesem Abschnitt werden wir also über eine andere Datenstruktur sprechen, die Array ähnelt, aber die Mängel von Array überwindet: ArrayList.
Erstens ist es nicht statisch. Die Anzahl der Elemente in jeder Dimension muss während der Kompilierung nicht angegeben werden. Die Standardanzahl der Elemente beträgt 16. Wenn die Anzahl der Elemente zunimmt und bald 16 überschreitet. es wird sich verdoppeln und auf 32 ausdehnen und regelmäßig wachsen, kleiner werden, der umgekehrte Vorgang wird durchgeführt.
Zweitens ist der Elementtyp ein schwacher Typ, Objekt. Zur Laufzeit wird der Typ jedes Elements anhand des tatsächlich zugewiesenen Typs bestimmt. Mit anderen Worten: Die Elemente in diesem Satz können eine Mischung aus verschiedenen Elementen sein.
Schauen wir uns zunächst die Schnittstelle von ArrayList an, die von .NET bereitgestellt wird:
1) Objekt Erstellung und Initialisierung
//对象创建 ArrayList arrayList = new ArrayList() {3.14, "vuefine"}; //添加元素 arrayList.Add("Hello wolrd"); arrayList.Add(5);
2) Auf Element zugreifen
//访问元素 object ele0 = arrayList[0]; Type t0 = ele0.GetType();//double
3) Element ändern
//修改元素 arrayList[0] = "Ni hao";
//删除元素 //移除已存在的对象 arrayList.Remove(5); arrayList.RemoveAt(0); //移除不存在的对象 arrayList.Remove(12); //不抛异常
5) ArrayList und zusätzlich einige Objektbeziehungen
object cloneAL = arrayList.Clone(); //创建浅表副本 Type tClone = cloneAL.GetType(); //Array是abstract,只能通过静态方法创建array Array array = Array.CreateInstance(typeof(object),arrayList.Count); arrayList.CopyTo(array);//复制到array
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des .NET Framework-ArrayList-Codes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!