是否有一个 ? a : b)形式的简写if-then-else版本?A:B),在vb.net中?

Is there a version of the shorthand If-Then-Else in C# (cond ? a : b), in VB.Net?

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
Is there a conditional ternary operator in VB.NET?

there is a version of the shorthand IF-THEN #:在C -其他P></

1
c = (a > b) ? a : b;

meaning…P></

1
2
3
4
if (a > b) {
  c = a; }
else {
  c = b; }

……在VB。NET?P></


要使用if运算符:

1
Dim maximum = If(a > b, a, b)

还有旧的IIF功能,它仍然有效,但IF更优越,因为它:

  • 执行类型推断(如果ab都是整数,则返回值将是整数而不是对象),并且
  • 缩短操作(如果a > b,则只评估a,反之亦然)--如果ab是函数调用,则这是相关的。

是的,你想要的是IF

这是一些参考资料

http://msdn.microsoft.com/en-us/library/bb513985

这是它的用途

1
c = IF(a > b, a , b)

显然,有一个名为iif的运算符,但它已被弃用。