C#接口汇总
1、IComparable和IComparer接口 用于比較和排序
IComparable 可比較的,實(shí)現(xiàn)該接口的類,便具有“可比較的”特性。
IComparer 比較器,實(shí)現(xiàn)該接口的類,是一個(gè)比較器,可以將其嵌入“類”中,使類具有“可比較的”的特性。
C#中的IComparable和IComparer接口
2、IEnumerable與IEnumerator接口 用于迭代
IEnumerable 可遍歷的,實(shí)現(xiàn)該接口的類,便具有“可遍歷的”特性。實(shí)現(xiàn)接口方法GetEnumerator(),返回IEnumerator對(duì)象,可用于循環(huán)訪問(wèn)集合元素。
IEnumerator接口,是真正的集合訪問(wèn)器,IEnumerator接口定義了一個(gè)Current屬性,兩個(gè)方法MoveNext()和Reset()。Current屬性獲取當(dāng)前集合中的項(xiàng);MoveNext方法移到下一項(xiàng)。
foreach語(yǔ)句揭秘
3、IConvertible接口 類型轉(zhuǎn)換
IConvertible接口定義的方法主要是為了將值或者引用類型的值轉(zhuǎn)換成公共語(yǔ)言運(yùn)行庫(kù)類型。實(shí)現(xiàn)該類型時(shí),應(yīng)該實(shí)現(xiàn)該接口定義的所有方法,當(dāng)類或者值類型的值無(wú)法轉(zhuǎn)換成某種公共語(yǔ)言運(yùn)行庫(kù)類型時(shí),應(yīng)該引發(fā) InvalidCastException異常。
IConvertible接口用法揭秘
4、ICustomFormatter及IFormatProvider接口 格式化
ICustomFormatter接口,定義一種方法,支持自定義設(shè)置對(duì)象的值的格式。值或者引用類型實(shí)現(xiàn)該接口時(shí),需要實(shí)現(xiàn)唯一方法Format(),Format 方法會(huì)返回對(duì)象值的自定義格式字符串表示形式。
IFormatProvider接口,格式提供者,用于返回控制格式化的對(duì)象。 類或數(shù)值類型實(shí)現(xiàn)此接口的 GetFormat方法,獲得提供格式信息的對(duì)象。
ICustomFormatter及IFormatProvider接口用法揭秘
5、IFormattable接口
IFormattable接口,可格式化的,提供的ToString()方法,可以將對(duì)象的值按照指定的格式轉(zhuǎn)化成字符串的功能。第一個(gè)參數(shù)告訴方法需要何種格式的輸出,而第二個(gè)IFormatProvider的參數(shù)則允許類型的使用者自定義格式化方法。
string ToString( string format, IFormatProvider formatProvider )
使用IFormattable實(shí)現(xiàn)自定義格式字符串輸出
6、ICollection接口
ICollection接口定義所有集合的大小、枚舉數(shù)和同步方法。ICollection接口是System.Collections命名空間中類的基接口。
7、IDictionary接口
IDictionary接口是基于ICollection接口的更專用的接口。IDictionary 實(shí)現(xiàn)是鍵/值對(duì)的集合,如Hashtable類。
8、IList接口
IList接口實(shí)現(xiàn)是可被排序且可按照索引訪問(wèn)其成員的值的集合,如ArrayList類。
總結(jié)
- 上一篇: ABP入门系列(10)——扩展AbpSe
- 下一篇: C#多线程编程系列(二)- 线程基础