数组列表和数组十分相似,区别在于数组列表的容量是可以动态变化的,而数组的容量是固定的。数组即Array类,数组列表即ArrayList类,两者十分相似。不过,Array类在System命名空间下,ArrayList类在System.Collections命名空间下。数组在初始化时需要指定容量,并且指定之后无法改变,而数组列表可以动态的改变容量。

       //初始化ArrayList
ArrayList lst = new ArrayList();
//初始化ArrayList并将容量设置为100
ArrayList lst2 = new ArrayList();
ArrayList lst3 = new ArrayList();
//设置容量为300
lst3.Capacity = ; int temp = ;
//向ArrayList中添加子项
lst.Add(temp);
int temp2 = ;
//向ArrayList中插入子项,第一个参数为插入位置
lst.Insert(, temp2);
int[] arr = new int[] {,,,};
//向ArrayList中插入集合子项
lst.AddRange(arr); foreach(var obj in lst)
{
Console.WriteLine(obj);
} //移除ArrayList项数为1的子项
lst.RemoveAt(); Console.WriteLine("移除后:");
foreach (var obj in lst)
{
Console.WriteLine(obj);
}

栈集合和队列集合都是System.Collections命名空间下的集合类型。栈集合类似于仅包括一个入口的容器,最先放进去的内容最后被取出,而最后放进去的内容最先被取出。队列集合则类似于两端分别为入口和出口的容器,最先进去的内容最先被取出,最后进去的内容最后被取出。栈集合和队列集合的其他方法都十分相似。

       //stack和queue用法相似,用vs代码提示很清楚2333
Stack stack = new Stack();
//添加子项
stack.Push();
stack.Push(arr);
//返回最外面的子项(对于栈,即使最后添加的子项)
object obj2 = stack.Peek();
stack.Pop();
object[] array_obj = stack.ToArray(); Console.WriteLine(obj2); Console.ReadKey();

.NET重思(三)-数组列表与数组的区别,栈集合和队列结合的区别的更多相关文章

  1. perl第三章 列表和数组

    访问数组中的元素    $fred[0]   $fred[1] $number=2.75; print $fred[$number-1]  结果就是print $fred[1] 特殊的数组索引1.对索 ...

  2. python基础(三)列表、数组、字典

    列表与元组 列表是最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 1 >>> names = ['wangeq','zlx','jack','rose ...

  3. 用数组模拟STL中的srack(栈)和queue(队列)

    我们在理解stack和queue的基础上可以用数组来代替这两个容器,因为STL中的stack和queue有可能会导致程序运行起来非常的慢,爆TLE,所以我们使用数组来模拟他们,不仅可以更快,还可以让代 ...

  4. 数组列表(ArrayList)

    2020-10-20        longzqa@163.com        stronglzq [摘要]针对数组容量固定无法扩展的问题,引入数组列表(ArrayList).主要对数组列表的声明及 ...

  5. 列表与数组 Perl入门第三章

    列表List 是标量的有序集合.数组array则是存储列表的变量.数组/列表的每个元素element都是单独的标量变量,拥有独立的标量值. 1. 数组: 访问数组中的元素: $fred[0]=&quo ...

  6. Effective Java 第三版——28. 列表优于数组

    Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...

  7. JavaScript高级程序设计--对象,数组(栈方法,队列方法,重排序方法,迭代方法)

    1.使用对象字面量定义对象 var person={}; 使用这种方式创建对象时,实际上不会调用Object构造函数. 开发人员更喜欢对象字面量的语法.   2.有时候需要传递大量可选参数的情形时,一 ...

  8. js数组(列表)的基本操作

    本文主要介绍JS对数组(列表)的基本操作.习惯了用数据库的操作顺序来说明:增.删.改.查:合并,裁剪,排序,格式化. 一.数组元素的添加(增加) 增加数组元素有三种方法:unshift()  push ...

  9. Perl的列表和数组

    列表和数组 列表 使用括号包围的元素,括号中的元素使用逗号隔开的是列表. 列表中的元素可以是字符串.数值.undef或它们的混合. 列表中的字符串元素需要使用引号包围. 空列表是括号中什么都没有的列表 ...

随机推荐

  1. uitableview顶部多出20距离, UIScollView顶部多出64距离

    self.automaticallyAdjustsScrollViewInsets = NO;看 这个UIViewController的这个属性你就明白了,此属性默认为YES,这样UIViewCont ...

  2. 【b404】虫食算

    Time Limit: 1 second Memory Limit: 50 MB [问题描述] 所谓虫食算,就是原先的算式中有一部分被虫子啃掉了,需要我们根据剩下的数字来判定被啃掉的字母.来看一个简单 ...

  3. spark action之countbykey

    java public class CountByKeyDemo { private static SparkConf conf = new SparkConf().setMaster("l ...

  4. 商(quotient)—— 两数之比

    1. IQ:Intelligence quotient IQ=MACA×100 MA:心智年龄(mental age) CA:实足年龄(chronological age)

  5. effective c++ 条款7

    1.随着多态基类应该声明一个质virtual析构函数. 假定class由于不管是什么virtual析构函数, 它应该有一个virtual析构函数. 2.classed的设计目的假设不是作为base c ...

  6. make 的参数

    1. -j -j(表示 job 的数目)参数可以对项目在进行并行编译,比如在一台双核的机器上,完全可以用 make -j4,让make 最多允许 4 个编译命令同时执行,这样可以更有效的利用 CPU ...

  7. 区间树(segment tree)

    区间树能够对保存的数据进行适当的预处理,以快速回复查询. 区间树常用于在一维数组的特定区间对查询进行快速回复.区间树的最典型也是最简单的应用就是求区间最小值的问题. 区间树的基本思路是,生成表示给定数 ...

  8. TCP 和 UDP 的区别

    参考:http://blog.csdn.net/li_ning_/article/details/52117463 TCP与UDP区别总结: 1.TCP面向连接(如打电话要先拨号建立连接);UDP是无 ...

  9. Qt控件焦点切换

    们日常切换控件,例如QQ登陆的账号和密码输入框就可以通过Tab键切换焦点.  图1 qq切换焦点 Qt中QWidget提供了一个静态方式实现该效果 其中也包含介绍使用 [static] void QW ...

  10. spring cloud eureka 服务端开启密码认证后,客户端无法接入问题

    Eureka服务端开启密码的认证比较简单 在pom文件中加入: <dependency> <groupId>org.springframework.boot</group ...