Vb.net 从函数返回字符串数组,而不首先初始化它

Vb.net 从函数返回字符串数组,而不首先初始化它,vb.net,Vb.net,我的情况类似于上面的代码示例,其中我从函数返回一个字符串数组 我想做的是只返回字符串数组,而不必先声明变量,然后返回变量 类似这样的,虽然这显然不起作用: Public Function Foo() as String() Dim bar As String = {"bar1","bar2","bar3"} Return bar End Function 有没有可能做到这一点,我似乎找不到有效的方法?您可以这样做: Return {"bar1","bar2","bar3"} 您不必声明变量

我的情况类似于上面的代码示例,其中我从函数返回一个字符串数组

我想做的是只返回字符串数组,而不必先声明变量,然后返回变量

类似这样的,虽然这显然不起作用:

Public Function Foo() as String()
Dim bar As String = {"bar1","bar2","bar3"}

Return bar
End Function
有没有可能做到这一点,我似乎找不到有效的方法?

您可以这样做:

Return {"bar1","bar2","bar3"}

您不必声明变量(如Darin中的示例),但必须创建所需类型的实例(字符串数组)


他的例子之所以有效,是因为他正在“更新”一个字符串数组。

你的评论“他的例子有效,是因为他正在“更新”一个字符串数组。”我有点困惑。Darin的建议似乎很有效,但这可能是一个不好的做法吗?他正在返回一个新的字符串数组。不是说这是错误的代码,而是解释了为什么您的示例DEO不起作用。@Richard:他的意思是,您总是需要有一个字符串数组实例才能返回,有两种方法—定义一个新的字符串数组变量,填充该变量并返回它(就像您当前所做的)……或者像Darin所展示的那样内联执行,这只是一个快捷方式,因为您直接返回新的字符串数组,而不是首先将其赋给变量
Public Function Foo() As String()
    Return New String() {"bar1", "bar2", "bar3"}
End Function