哈希表(Hashtable)
Hashtable 类代表了一系列基于键的哈希代码组织起来的键/值对。它使用键来访问集合中的元素。当您使用键访问元素时,则使用哈希表,而且您可以识别一个有用的键值。哈希表中的每一项都有一个键/值对。键用于访问集合中的项目。key通常可用来快速查找,同时key是区分大小写;value用于存储对应于ke...
泛型List介绍
因为ArrayList存在不安全类型与装箱拆箱的缺点,所以出现了泛型的概念。List类是ArrayList类的泛型等效类,它的大部分用法都与ArrayList相似,因为List类也继承了IList接口。最关键的区别在于,在声明List集合时,我们同时需要为其声明List集合内数据的对象类型。定义:L...
动态数组(ArrayList)
ArrayList是命名空间System.Collections下的一部分,在使用该类时必须进行引用,同时继承了IList接口,提供了数据存储和检索。ArrayList对象的大小是按照其中存储的数据来动态扩充与收缩的。所以,在声明ArrayList对象时并不需要指定它的长度。动态数组(ArrayLi...
单问号(?)和双问号(??)
单问号(?)单问号运算符可以表示:可为Null类型,C#2.0里面实现了Nullable数据类型int i = null;//这句是错的。int不能定义为null。默认值为0定义一个可为null类型的整型:int? i = null;//这...
深入理解C# 装箱和拆箱
装箱(boxing)和拆箱(unboxing)是C#类型系统的核心概念.是不同于C与C++的新概念!,通过装箱和拆箱操作,能够在值类型和引用类型中架起一做桥梁.换言之,可以轻松的实现值类型与引用类型的互相转换,装箱和拆箱能够统一考察系统,任何类型的值最终都可以按照对象进行处理.装箱和拆箱是值类型和引...
抽象类(abstract)与接口(interface)相同点和区别
相同点:1、都可以被继承2、都不能被实例化3、都可以包含方法声明4、派生类必须实现未实现的方法,抽象类是抽象方法,接口则是所有成员(不仅是方法包括其他成员)区别一:1.抽象类可以有构造方法,接口中不能有构造方法。2.抽象类中可以有普通成员变量,接口中没有普通成员变量3.抽象类中可以包含非抽象的普通方...
interface接口
继承"基类"跟继承"接口"都能实现某些相同的功能,但有些接口能够完成的功能是只用基类无法实现的.1.接口用于描述一组类的公共方法/公共属性. 它不实现任何的方法或属性,只是告诉继承它的类至少要实现哪些功能,继承它的类可以增加自己的方法.2.使用接口可以使继承它...
abstract抽象类和抽象方法
abstract可以用来修饰类,方法,属性,索引器和时间,这里不包括字段. 使用abstrac修饰的类,该类只能作为其他类的基类,不能实例化,而且abstract修饰的成员在派生类中必须全部实现,不允许部分实现,否则编译异常.在方法或属性声明中使用abstract修饰符以指示方法或属性不包含实现。含...
SaveFileDialog控件另存为文件
SaveFileDialog控件可以用于保存文件。打开一个文件后,需要对它进行一些修改并保存它。SaveFileDialog控件提供的功能和OpenFileDialog相同,但操作顺序相反。在保存文件时,该控件允许选择文件保存的位置和文件名。重点需要注意的是:SaveFileDialog控件实际上不...
StreamReader/StreamWriter与FileStream的区别
一个很大的区别就是:StreamReader/StreamWriter操作的是字符数据(char),而FileStream操作的是字节数据(byte),FileStream与StreamXXXX类的默认编码都是UTF8,而一个中文字符占2个字符,所以StreamXXXX类常用于文本的打开与保存,而F...
OpenFileDialog控件打开文件
OpenFileDialog控件打开文件OpenFileDialog类提供了用户打开文件的功能,它有如下属性:OpenFileDialog控件的基本属性InitialDirectory:设置对话框的初始目录。Filter:要在对话框中显示的文件筛选器,例如,"文本文件(*.txt)|*.t...
Dispose和Close区别.
Dispose和Close区别: SqlConnection conn = new SqlConnection(@&q...