sorting a generic list of doubles

2020-03-21 02:35发布

问题:

I have a generic list of doubles that show on the page like this:

1199.17
1199.17
1161.67
1161.67
1161.67
1161.67
1161.67
1161.67
1161.67
1161.67
1161.67
1161.67
1161.67
1161.67
1161.67
1199.17
1349.17
1349.17
1349.17
1349.17
1349.17
1349.17
1311.67
1311.67
1311.67
1311.67
1311.67
1349.17
2174.17
2174.17
2174.17
2174.17
2136.67
2136.67
2136.67
2136.67
2174.17
2361.67
2361.67
2361.67
2361.67
2361.67
2361.67
2361.67
2361.67
2399.17
2849.17
2849.17
2849.17
2849.17
2849.17
2849.17
2849.17
2849.17
3111.67
3111.67
3111.67
3149.17

I am trying to order them so that the lowest double is first.

I tried doublePriceList.Sort() but this did not work.

How can I do this?

回答1:

using System.Linq;

and

var sortedList = doublePriceList.OrderBy(d => d);


回答2:

Sort (as per docs) works perfectly, although it isn't returning anything (isn't chainable):

var ds = new List<double>{
    2399.17,
    1199.17,
    // ...
};

ds.Sort();

foreach (double d in ds)
    Console.WriteLine(d);


回答3:

Try this if you want to print them out

foreach( double d in doublePriceList.OrderBy( d => d ) )
{
  //print d
}