c 根據物件的屬性進行排序

2021-09-11 00:26:59 字數 1520 閱讀 6113

使用list容器提供的sort(icomparercomparer)方法,實現物件根據某個屬性進行排序。說明如下:

1、自定義類person

class person

2、建立時間比較器

// 時間比較器

class timecomparer : icomparer

}

icomparer是泛型介面,引數使用我們用來比較的物件的型別。同理,年齡比較器如下

// 年齡比較器

class agecomparer : icomparer

}

3、建立list容器

listlistperson = new list();
4、向容器中新增1000個物件

person p ;

random rd = new random();

for(int i = 0; i < 1000; i++)

5、呼叫sort方法排序

listperson.sort(new timecomparer());
6、排序結果

7、全部**

using system;

using system.collections;

using system.collections.generic;

using system.diagnostics;

using system.linq;

using system.text;

using system.threading;

using system.threading.tasks;

using static system.net.mime.mediatypenames;

sp.restart();

// 按時間排序

listperson.sort(new timecomparer());

// 按年齡排序

agecomparer());

sp.stop();

console.writeline("排序耗時:"+ sp.elapsedmilliseconds);

console.writeline("");

for (int i = 0; i < listperson.count; i++)

console.readline();

return;}}

class person

// 年齡比較器

class agecomparer : icomparer

}// 時間比較器

class timecomparer : icomparer}}

根據屬性值對Array進行排序

trees new array for var i int 0 i 500 i trees.sorton z array.numeric array.descending for i 0 i 500 i array.sort comparefunction sortoptions 其引數定義如下 s...

物件陣列通過物件的屬性進行排序

最常見的對陣列進行排序,可以用sort 方法,按照陣列中元素的首字母或者數字大小進行排序 var arr 2,5,13,7,4,9,1 var arr1 arr.sort console.log arr 1,13,2,4,5,7,9 console.log arr1 1,13,2,4,5,7,9 s...

物件集合list根據物件屬性排序2015 8 16

排序的方法類 排序演算法,可以呼叫這個方法進行倒序 順序 param list 要進行排序的 list param method 要對list中的物件的那個屬性的get方法進行排序 比如 時間 time get方法為gettime 只需要傳入gettime即可 param sort 傳入字串 是進行...