C# 检查c中三元运算符中的多个条件#
我有三个变量C# 检查c中三元运算符中的多个条件#,c#,c#-3.0,c#-2.0,C#,C# 3.0,C# 2.0,我有三个变量 int a =10; int b=20; int c=30; int d=0; 现在我想做的事情是,我想使用三元运算符并分配 (a,b,c)中最大的一个变成了“d”。提前感谢您可以使用Math.Max来实现您的目标: int d = Math.Max(a, Math.Max(b, c)) 当然,您也可以使用三元运算符,但它可能看起来有点难看: int d = (a > b ? a : b) > c ? (a > b ? a : b) : c; 或
int a =10;
int b=20;
int c=30;
int d=0;
现在我想做的事情是,我想使用三元运算符并分配(a,b,c)中最大的一个变成了“d”。提前感谢您可以使用
Math.Max
来实现您的目标:
int d = Math.Max(a, Math.Max(b, c))
当然,您也可以使用三元运算符,但它可能看起来有点难看:
int d = (a > b ? a : b) > c ? (a > b ? a : b) : c;
或:
您可以这样做,因为您可以嵌套三元运算符,如图所示
真正的问题是你为什么要这么做。可读性会很差。Yuriy Guts版本的max函数更具可读性。d=(a>b)?((a>c)→a:c):((b>c)→b:c)另一种方法:
d = new[] { a, b, c }.Max();
在我看来,它比Math.Max版本短得多,可读性也强得多。昨天问了几乎相同的问题。家庭作业/学期论文?谷歌,但没有找到任何解决方案。那是家庭作业吗?然后贴上标签。
d = new[] { a, b, c }.Max();