1樓:小林子
1全部c#中常用到的集合都有一個預設的sort方法,這個方法可以進行預設排序。
但是如果這些集合中的元素是自定義的類,那麼這個預設的sort可能就不準確了。
文章中使用到的名稱空間是system,介面是 icomparable 和 icomparer。
sort的預設無引數的比較方式,我個人認為是icomparable中的compareto函式。
抄寫書上的兩個例子來輔助記憶:
[csharp] view plaincopy
class person : icomparable
public string name
public int compareto(object obj)}}
[csharp] view plaincopy
class personcomparername : icomparer
}如果在集合中新增的全是person物件,這個集合名稱為list,那麼sort方法:
list.sort(),這個方法將使用person中的compareto方法,通過年齡來對比
list.sort(personcomparername.default),這個方法將使用person中的compare方法,通過名字來對比。
另外list,這個東西居然可以用來繼承。。。。以前都不知道的,不過感覺意義不大。
sort方法還可以使用第三種方式來排序,但是第三種方式的排序需要另外寫一個函式方法。
[csharp] view plaincopy
public int comparesort(point x, point y)
[csharp] view plaincopy
comparisonsorterx = new comparison(comparesort);
list.sort(sorterx);
這樣就可以呼叫了。
2樓:匿名使用者
1. 先看什麼型別的資料,是float 還是double,int2.定義,比如 list list = new list3.
1 list.sort().它有一個預設排序。
檢視文件說明3.2 如果想自己排序 list.sort(icomparision), 先定義一個繼承比較介面的類,作為引數就可以了
3樓:希明潔
listlist1 = new list();
for (int i = 0; i < 10; i++) //輸入10~1
list1.sort(); //排序int min = list1.min(); //輸出最小值for (int i = 0; i < list1.
count; i++) //顯示
",list1[i]);
}console.writeline("\n最小值是:",min);
多上微軟的msdn上看看,在網上也能搜到一大堆~
4樓:匿名使用者
list有sort方法的
要自己給型別t定義一個比較的規則
然後調sort方法就好了
5樓:匿名使用者
回答問題,為了完成任務。
c#集合排序
6樓:匿名使用者
這個是linq和lamda語法,上面這個意思很容易理解,就是從dic這個集合中按元素的value值升序排序,之後取出每個元素重新組成一個新的dictionary
7樓:匿名使用者
在dic的列表,以value欄位倒序排列,然後建立一個dictionary(字典),將每個項新增到此字典中,key值為key欄位,value為value欄位
c# list集合中有一個模型,然後怎麼根據裡面某一個欄位排序
8樓:匿名使用者
你好,最簡單的方法:
名稱空間引用using system.linq;
假設你的這個ilist的物件名為listtemp;
var listresult = listtemp.orderbydescending ( x => x.age ).tolist();
9樓:陽光的雷咩咩
var sorted=listusers.orderby(x=>x.age);
foreach(user u in sorted)
//這裡已經是排序過的了
List集合問題,list集合裡的問題
出這個結果的原因很清楚,你但不調一下就能看出來,因為你的原始的list中有兩個張三,之後生成的itemlist中也是有兩個張三!itemlist 所以列印出來的結果是 張三discount 張 李四discount 李 王五張三 discount 張 看了註釋也不知道什麼問題哦。能詳細說說麼?lis...
數學中集合的問題,數學中集合的問題
後者表示前一個集合包含於後一個集合,即前一個集合中的元素都在後一個集合裡 前者加 表示表示前一個集合包含於後一個集合,而且這兩個集合不相等 a b 表示a是b的真子集,即b包含a.a的所有元素都是b的元素,但b中的元素不一定是a的元素.和 a b 表示a是b的子集,即b包含a.但a的元素有可能和b的...
離散數學集合論問題,離散數學集合論問題
1 如圖 2 b 極大元 2,5 極小元 1,3 答題不易,請及時採納,謝謝!集合a a裡的元素是1,2,可以說1屬於a,2屬於a,屬於a,屬於a。而是包含於a但不屬於a 集合的概念要分清包含,屬於,元素與集合之間是屬於關係,集合與集合之間是包含 包含於的關係 離散數學 集合論的問題 集合a a裡的...