首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VB.NET空合并运算符?

VB.NET空合并运算符?
EN

Stack Overflow用户
提问于 2011-07-22 16:00:44
回答 4查看 43.5K关注 0票数 76

可能的重复: VB.NET中的合并算子和条件算子 C#的操作符有VB.NET等价吗?

是否有一个内建VB.NET等效于C#空合并运算符?

EN

回答 4

Stack Overflow用户

发布于 2011-07-22 16:06:23

是的,只要您使用的是VB 9或更高版本(包括在Visual 2008中),就可以使用。

您可以使用重载的运算符版本只接受两个参数:

代码语言:javascript
复制
Dim myVar? As Integer = Nothing
Console.WriteLine(If(myVar, 7))

更多信息可以在这里团队的博客文章中找到。

(是的,这是一个操作符,尽管它看起来像一个函数。它将编译成与C#中的“适当”空合并操作符相同的IL。

示例

代码语言:javascript
复制
Dim b As Boolean?
Console.WriteLine("{0}.", If(b, "this is expected when b is nothing"))
'output: this is expected when b is nothing.

b = False
Console.WriteLine("{0}.", If(b, "this is unexpected when b is false"))
'output: False.

b = True
Console.WriteLine("{0}.", If(b, "this is unexpected when b is true"))
'output: True.
票数 120
EN

Stack Overflow用户

发布于 2011-07-22 16:04:03

根据这个问题,答案似乎是如果()

票数 11
EN

Stack Overflow用户

发布于 2011-07-22 16:03:39

不是的。使用GetValueOrDefault,这就是它存在的原因!

票数 -3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6792729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档