什么是 C# 的 VB.NET 等价物?操作员? [复制]

Posted

技术标签:

【中文标题】什么是 C# 的 VB.NET 等价物?操作员? [复制]【英文标题】:What is the VB.NET equivalent of the C# ? operator? [duplicate] 【发布时间】:2013-05-17 09:55:30 【问题描述】:

VB.NET 等效于 C# ? 运算符是什么?

比如下面的代码怎么写成VB.NET

hp.pt = iniFile.GetValue("System", "PT").ToUpper().Equals("H") ? PT.PA : PT.SP

【问题讨论】:

【参考方案1】:

从历史上看,IIf 通常用于此目的 - 但它不使用短路,因此并不完全相同。但是,there is now a 3-part If

hp.pt = If(iniFile.GetValue("System", "PT").ToUpper().Equals("H"), PT.PA, PT.SP)

确实使用短路,因此与 C# 中的 conditional operator 相同。

【讨论】:

【参考方案2】:

您可以使用If operator

hp.pt = If(iniFile.GetValue("System", "PT").ToUpper().Equals("H"), PT.PA, PT.SP)

【讨论】:

【参考方案3】:

尝试像这样使用If 函数:

x = If(condition, trueValue, falseValue)

【讨论】:

【参考方案4】:

此问题与已经提出并回答的问题重复:

Is there a conditional ternary operator in VB.NET?

这里:

Dim foo as String = If(bar = buz, cat, dog)

【讨论】:

你应该将问题标记为重复。 届时会这样做

以上是关于什么是 C# 的 VB.NET 等价物?操作员? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

VB.NET 中“(字节)”的等价物是啥?

需要帮助将 c# 中的 opencv 转换为 vb.net

如何将公共事件从 c# 转换为 vb.net [关闭]

C#中的静态变量

VB.NET的dim语句的区别

使用 LINQ 和 C# 的随机数组