wklejamy.pl website for sale. You are interested in. Please contact. wklejamy@gmail.com

Click to buy coffe
avatar
Untitled

Guest 107 3rd Oct, 2023

MARKUP 1.05 KB
                                           
                         namespace AltiumInterview.Sorter.Comparer
{
    internal class CustomStringComparer : IComparer<string>
    {
        public int Compare(string? x, string? y)
        {
            if (x == null && y == null)
                return 0;
            if (x == null && y != null) return -1;
            if (x != null && y == null) return 1;

            var xArray = x.Split('.');
            if (!int.TryParse(xArray[0], out var xNumber))
            {
                throw new ArgumentException("Invalid record format");
            }

            var yArray = y.Split('.');

            if (!int.TryParse(yArray[0], out var yNumber))
            {
                throw new ArgumentException("Invalid record format");
            }

            var stringComparisionResult = string.Compare(xArray[1], yArray[1]);

            if (stringComparisionResult != 0)
                return stringComparisionResult;

            return xNumber.CompareTo(yNumber);
        }
    }
}
                      
                                       
To share this paste please copy this url and send to your friends
RAW Paste Data
Recent Pastes
Ta strona używa plików cookie w celu usprawnienia i ułatwienia dostępu do serwisu oraz prowadzenia danych statystycznych. Dalsze korzystanie z tej witryny oznacza akceptację tego stanu rzeczy.
Wykorzystywanie plików Cookie
Jak wyłączyć cookies?
ROZUMIEM