Hi, i have a generic sorted list "results" with key = some filename and value = boolean.
I would like to sort the list by the boolean entry or value column. does anyone know how i can do this?
Thanks!
From stackoverflow
-
SortedList is optimized so that inertions occur in an ordered fashion, such that enumeration occurs in a sorted order at minimal cost. Anything else requires a re-sort. Thus:
SortedList<string,bool> l=new SortedList<string, bool>(); l.Add("a",true); l.Add("a",false); l.Add("b",true); l.Add("b",false); var orderByVal=l.OrderBy(kvp => kvp.Value);but this enumeration will be significantly slower to calculate, and be performed up-front, requiring extra storage to do so.
Depending on your situation it might be cheaper to maintain 2 SortedList instances with the key/value reversed.
-
In .NET 2.0, you could add your items to a SortedList:
public static List<MyObject> SortedObjects(IEnumerable<MyObject> myList) { SortedList<string, MyObject> sortedList = new SortedList<string, MyObject>(); foreach (MyObject object in myList) { sortedList.Add(object.ValueIWantToSort, object); } return new List<MyObject>(sortedList.Values); }
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.