使用三元运算符从三个变量返回最低值

时间:2012-01-30 09:36:18

标签: c# ternary-operator

我有三个变量,所有整数。

indexA
indexB
indexC

现在,使用三元运算符,如何在三个运算符中返回最低值?

3 个答案:

答案 0 :(得分:8)

以下

result = indexA < indexB ? Min(indexA, indexC) : Min(indexB, indexC);

应该做你想要的,假设你可以使用其他运算符和方法......

答案 1 :(得分:4)

var lowestVal = (indexA < indexB ? indexA : indexB) < indexC ? (indexA < indexB ? indexA : indexB) : indexC;

答案 2 :(得分:3)

它必须是三元运算符吗?使用Min<>()似乎更简单。

[TestMethod]
public void FindMinimum() {

    int indexA = 6;
    int indexB = 7;
    int indexC = 1;

    Assert.AreEqual(1, new[] { indexA, indexB, indexC }.Min());

}