将字符串方法插入字符串数组中

时间:2015-04-13 12:53:06

标签: c# arrays

我正在尝试选择一组值,每个方法返回一个字符串数组,我试图将其放入main中的字符串数组中。这是代码:

string[] array = { MethodA1(), MethodA2(), MethodA3() };

我正在尝试创建string []数组,只是一个项目。这有效:(但它只允许用户显示/选择一个值)

string[] array = MethodA1();

有人能想到一种允许多个方法返回数组的方法吗?

3 个答案:

答案 0 :(得分:7)

这样的东西?

string[] array = MethodA1().Concat(MethodA2()).Concat(MethodA3()).ToArray();

编辑:从您的评论中可以看出,您实际上是在尝试实现完全不同的东西:根据参数选择其中一种方法的结果。你的意思是这样的吗?

private string[] SelectFiles(object userInput)
{
    string[] array;

    if (userInput == 1)
    {
        array = MethodA1();
    }
    else if (userInput == 2)
    {
        array = MethodA2();
    }
    else
    {
        array = MethodA3();
    }

    return array;
}

答案 1 :(得分:5)

您可以使用SelectMany将所有内容展平为单个string[]

string[] array = (new[] { MethodA1(), MethodA2(), MethodA3() })
    .SelectMany(a => a)
    .ToArray();

答案 2 :(得分:0)

也许你应该考虑

List<string>

你可以简单地使用

myList.AddRange(stringArrayMethod());