list sort1

리스트 sort에 대해서 알아보자.

팁: CompareTo
CompareTo의 리턴값이 int이다.
int [float 인스턴스].CompareTo(value)
int [A].CompareTo(B)

-1 : A가 B보다 작다
0 : A와 B가 같다.
1 : A가 B보다 크다

CompareTo 함수 사용 예
    float a = 3f, b = 4f;
    int result = a.CompareTo(b); 
    Console.WriteLine("{0}, {1}, CompareTo = {2}", a, b, result);
    //출력: 3, 4, -1

    a = 4f; b = 4f;
    result = a.CompareTo(b); 
    Console.WriteLine("{0}, {1}, CompareTo = {2}", a, b, result);
    //출력: 4, 4, 0

    a = 4f; b = 3f;
    result = a.CompareTo(b); 
    Console.WriteLine("{0}, {1}, CompareTo = {2}", a, b, result);
    //출력: 4, 3, 1

ComareTo 함수를 사용하면 코드를 간단하게 만들수 있다.
여기서는 델리게이트, 람다를 통한 소팅에 대해서만 알아 볼것이다.

using System;
using System.Collections.Generic;

static void Main(string[] args)
{
    List<float> list = new List<float>(new float[] { 3, 1, 2, 5, 4 });
#if false
    list.Sort(delegate (float t1, float t2)
    {
        return t1.CompareTo(t2);
    });
#else
    list.Sort((float t1, float t2) =>
    {
        return t1.CompareTo(t2);
    });
#endif
    foreach (float v in list)
        Console.WriteLine(v);
}

참조)
list_sort.html