人員生日 isbetween 示例**如下:
var p1= new person; var p2= new person; var p3= new person; bool b6 = p2.isbetween(p1, p3, new personbirthdaycomparer());
類似,我們還可以對人員進行身高、體重、人品等其它方面的 isbetween 判斷,只需要傳入不同的 comparer。
針對 icomparable 介面的 isbetween 擴充套件
因為它實 icomparable 和 icomparable,所以可以和 int 和 double 進行比較,則可以如下使用:
bigint bi = new bigint(); bool b8 = bi.isbetween(10, 20); bool b9 = bi.isbetween(1.424e+12, 2.3675e+36);
( .net 中已經有了大整數型別,請參見:biginteger 結構,不過沒有實現 icomparable 和 icomparable )
其它比較擴充套件code.google.com/p/hebmg
有了上面的 isbetween 擴充套件,再寫其它比較擴充套件就易如反掌了,比如下面幾個:
lessthan lessorequals greatorequals greatthan
命名空間在擴充套件方法中的妙用
net的不同版本中,有很多方法是新加的,而且是以擴充套件方法的形式來呈現,但我們會發現引用的命名空間並沒有增加,請看下圖。這樣,在我們使用擴充套件方法的時候,不並不覺得是擴充套件方法,而是相當於例項中的原生方法。依據這一思路,我們在寫擴充套件方法的時候,也可以將擴充套件方法的命名空間與要擴充套件例項...
C 擴充套件方法
c 語言從3.0開始增加了乙個很特別的功能 擴充套件方法。那麼擴充套件方法起什麼作用呢?很多時候我們想為已經存在的類擴充套件某些功能,而又沒有必要去繼承該類,甚至有時候這個類根本就不允許繼承,如string類,這時候就可以使用擴充套件方法來為其擴充套件功能。下面舉例說明 一 我們建立乙個類庫如下 c...
C 擴充套件方法
c 語言從3.0開始增加了乙個很特別的功能 擴充套件方法。那麼擴充套件方法起什麼作用呢?很多時候我們想為已經存在的類擴充套件某些功能,而又沒有必要去繼承該類,甚至有時候這個類根本就不允許繼承,如string類,這時候就可以使用擴充套件方法來為其擴充套件功能。下面舉例說明 一 我們建立乙個類庫如下 c...