泛型List、HashTable】的更多相关文章

1.foreach[对一些数组或集合进行遍历] foreach(类型 变量名 in 集合对象){语句体} //定义一个数组 ,,,,, }; foreach(var i in sNum1) { Console.WriteLine(i); } foreach for循环 ,,,,, }; //for循环遍历 ;i<str1.length;i++) { Console.WriteLine(str1[i]); } for循环遍历 2.异常 1)异常和错误的区别: 错误:语法错误根本没有编译成功 异常:…
1.集合(1)ArrayList内部存储数据的是一个object数组,创建这个类的对象的时候,这个对象里的数组的长度为0(2)调用Add方法加元素的时候,如果第一次增加元神,就会将数组的长度变为4往里面加(3)如果存储数据的数组满了,就会新建一个数组长度是原来的数组的两倍,这个数组被原来的数组的变量所引用比如自己实现简单的ArrayList Add方法 public class MyArrayList { ]; ; public void Add(object obj) { ) { ]; Arr…
用于记录C#知识要点. 参考:CLR via C#.C#并发编程.MSDN.百度 记录方式:读每本书,先看一遍,然后第二遍的时候,写笔记. CLR:公共语言运行时(Common Language Runtime)是一个可由多种编程语言(VB.F#等)使用的公共语言运行库. 托管模块:编译源码会生成托管模块,他是标准的PE文件.包含:PE32头.CLR头.IL中间语言. 元数据:CLR除了生成IL外,还会生成元数据.元数据总与包含IL代码的文件相关联. 程序集:是一个或多个模块/资源的逻辑性分组.…
“你每次都选择合适的数据结构了吗?” - Jeffery Zhao .NET面试题系列目录 ICollection<T>继承IEnumerable<T>.在其基础上,增加了Add,Remove等方法,可以修改集合的内容.IEnumerable<T>的直接继承者还有Stack<T>和Queue<T>. 所有标准的泛型集合都实现了ICollection<T>.主要的几个继承类有IList<T>,IDictionary<K…
选择一个合适的数据结构会对程序的性能有着显著的提高 线性表和链表: 1.LinkedList<T>:适合于元素数组不固定,存在大量列表的头尾添加动作场合.其它可使用List<T>. 2.Arra:元素数量固定,需要用到检索(即索引器). 3.List<T>:元素数量不固定,需要用到索引器. 栈和队列(只有在模拟栈和队列时才考虑): 1.Stack (Stack<T>):当需要实现 LIFO(Last In First Out)时. 2.Queue (Queu…
摘自http://www.cnblogs.com/kissdodog/archive/2013/01/29/2882195.html 先来了解下集合的基本信息 1.BCL中集合类型分为泛型集合与非泛型集合. 2.非泛型集合的类和接口位于System.Collections命名空间. 3.泛型集合的类和接口位于System.Collections.Generic命名空间. ICollection接口是System.Collections命名空间中非泛型集合类的基接口,它继承自IEnumerable…
集合,表示可以通过遍历每个元素来访问的一组对象(特别是可使用foreach循环访问):一个集合包括多个元素,即有一个集合类对象和N个元素对象. BCL(Base Class Library, 基类库)中集合类型分为泛型集合与非泛型集合.非泛型集合的类和接口位于System.Collections命名空间.泛型集合的类和接口位于System.Collections.Generic命名空间. IEnumerable<T>和IEnumerable是所有集合或集合接口的基接口,所有集合接口或集合都继承…
集合类型 数组 数组需要注意的就是多维数组和数组的数组之间的区别,如下: using System; namespace Study { class Program { static void Main(string[] args) { //一维数组 ]; , , , , }; //取最后一项 ]; //二维数组 , ]; , , }, {, , }}; //取最后一项 , ]; //数组的数组 ][]; , , }, , }}; //取最后一项 ][]; } } } 多维数组,每个子数组的长度…
引言 在c#常用的集合分为非泛型集合和泛型集合. 非泛型集合的类和接口位于System.Collections命名空间.这些接口和类定义各种对象(如列表.队列.位数组.哈希表和字典)的集合. 泛型集合的类和接口位于System.Collections.Generic命名空间.命名空间包含定义泛型集合的接口和类,泛型集合允许用户创建强类型集合,它能提供比非泛型强类型集合更好的类型安全性和性能. System.Collections.Specialized 命名空间包含专用的和强类型的集合,例如,链…
一. 各类数据结构比较及其线程安全问题 1. Array(数组): 分配在连续内存中,不能随意扩展,数组中数值类型必须是一致的.数组的声明有两种形式:直接定义长度,然后赋值:直接赋值. 缺点:插入数据慢. 优点:性能高,数据再多性能也没有影响 特别注意:Array不是线程安全,在多线程中需要配合锁机制来进行,如果不想使用锁,可以用ConcurrentStack这个线程安全的数组来替代Array. { Console.WriteLine("---------------------------01…