已經有乙個現成的方法了

2021-06-21 00:00:14 字數 647 閱讀 8608

console.writeline(buffer1.isequal(buffer2));

不錯,看來這位同學悟性挺高,懂得發揮擴充套件方法的作用了。但是,這位兄台仍舊不滿意,還不夠簡單。

其實,.net類庫已經有乙個現成的方法了,也是擴充套件方法,要比較兩個序列(如陣列,列表等)中各個元素是否相等,只要呼叫該方法即可,不用自己寫**實現。什麼方法呢?這個方法的芳名叫做sequenceequal。

因此,整個程式的**我們完全可以很簡單地完成。

byte buffer1 = ;

byte buffer2 = ;

console.writeline(buffer1.sequenceequal(buffer2));

這位仁兄如獲至寶,馬上興奮起來,啊!原來還可以這樣耍!就好比孫行者在龍宮發現如意棍一樣的興奮。

可能有些朋友又會問了,如果我們比較的元素是自己編寫的類呢?我需要自己的比較規則。無妨,sequenceequal方法還有乙個過載,就是可以向方法的引數傳乙個實現了iequalitycomparer介面的物件。

由於equalitycomparer類實現了該介面,在我自自定義比較器時,可以直接從該類派生。

比如我們定義了乙個「帥哥」類,它包含name和id兩個屬性,對於任意兩個「帥哥」物件,只要id相等,我們就認為他們是同一位帥哥。

關於排序方法有了乙個籠統的了解

排序有內部排序和外部排序,內部排序是資料記錄在記憶體中進行排序,而外部排序是因排序的資料很大,一次不能容納全部的排序記錄,在排序過程中需要訪問外存。1 將乙個記錄插入到已排序好的有序表中,從而得到乙個新,記錄數增1的有序表。即 先將序列的第1個記錄看成是乙個有序的子串行,然後從第2個記錄逐個進行插入...

終於有了乙個新浪Blog

我感覺這是個很成熟的選擇。在類似門戶 大使用者量的情況下jsp和asp.net似乎還沒有特別好的例子。csdn,donews的blog就是乙個反面的例子,速度 www.cnblogs.com 的原因,儘管後者比前者要穩定些。寫blog的blogger們大多都用自己的伺服器,因為怕 集中的可憐 盛大玩...

當乙個男人有了女友之前後

1 有女朋友之前,我的工資可以存一半花一半 有女朋友之後,另一半也得花光,有時候還得借外債。2 有女朋友之前,我一周只洗一次我自己的衣服 有女朋友之後,我一周洗三次衣服,其中的兩次都是給女朋友洗的。3 有女朋友之前,我一日只吃兩餐 早餐免了 有女朋友之後,我們一天吃三頓飯,有時候還得加夜宵。4 有女...