Maison > Article > développement back-end > Explication détaillée du code .NET Framework-ArrayList
Lors de l'introduction de la structure de données Array dans la section précédente, nous avons mentionné qu'elle est statique, pour chaque dimension Le nombre des éléments doivent être déterminés de manière unique au moment de la compilation et leur type doit être fortement typé.
Ainsi, dans cette section, nous parlerons d'une autre structure de données similaire à Array, mais qui pallie les défauts d'Array : ArrayList.
Tout d'abord, il n'est pas statique. Le nombre d'éléments dans chaque dimension n'a pas besoin d'être spécifié lors de la compilation. Le nombre d'éléments par défaut du système est de 16. Lorsque le nombre d'éléments augmente et est sur le point de dépasser 16, il sera doublé et étendu à 32, et grandira régulièrement, deviendra plus petit, le processus inverse s'effectue.
Deuxièmement, le type d'élément est un type faible, objet. Au moment de l'exécution, le type de chaque élément est déterminé en fonction du type réel attribué. En d'autres termes, les éléments de cet ensemble peuvent être une variété d'éléments différents, un mélange de bons et de mauvais.
Regardons d'abord l'interface d'ArrayList fournie par .NET :
1) Objet création et initialisation
//对象创建 ArrayList arrayList = new ArrayList() {3.14, "vuefine"}; //添加元素 arrayList.Add("Hello wolrd"); arrayList.Add(5);
2) Accéder à l'élément
//访问元素 object ele0 = arrayList[0]; Type t0 = ele0.GetType();//double
3) Modifier l'élément
//修改元素 arrayList[0] = "Ni hao";
//删除元素 //移除已存在的对象 arrayList.Remove(5); arrayList.RemoveAt(0); //移除不存在的对象 arrayList.Remove(12); //不抛异常
5) ArrayList et en plus Quelques relations d'objet
object cloneAL = arrayList.Clone(); //创建浅表副本 Type tClone = cloneAL.GetType(); //Array是abstract,只能通过静态方法创建array Array array = Array.CreateInstance(typeof(object),arrayList.Count); arrayList.CopyTo(array);//复制到array
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!