C # проверить, какое целое число выше - PullRequest
5 голосов
/ 22 марта 2011

У меня есть два целых числа, int1 и int2. Я хочу проверить, какой из них выше. Как я могу сделать это лучше всего? Есть ли для этого функция C # .NET или я должен написать ее сам?

Из источника я могу сделать что-то похожее на это:

if (int1 < int2)
    return int1;
else
    return int2;

Но мне было интересно, есть ли более элегантный способ сделать это?

твой, Бернхард

Ответы [ 5 ]

21 голосов
/ 22 марта 2011

Math.Max

Использование:

int highest = Math.Max(int1, int2);

Перегружено для всех числовых типов.

3 голосов
/ 22 марта 2011

Тернарный оператор немного лучше:

return (int1 > int2) ? (int1) : (int2) ;
3 голосов
/ 22 марта 2011

используйте это:

   int result = Math.Max(int1,int2);
1 голос
/ 22 марта 2011

Если вы хотите более элегантный способ сделать это в будущем, вы можете использовать расширения метода. См. Пример ниже

public static int CompareTo(this int src, int compare)
{
     return src == compare ? 0 : (Math.Max(src, compare) == src ? 1 : -1);
}

НТН,

Матти

1 голос
/ 22 марта 2011
int result = int1 > int2 ? int1 : int2;
...