首页 > 解决方案 > 如何从c#中的方法返回两个字符串数组

问题描述

我在 Main 方法中有两个列表,并将它们传递给另一个我想要查找唯一值的方法。我可以找到唯一值,但是当我尝试返回两个字符串数组时,我不断收到错误。这是我的代码。我想从 UniqueNames 返回 names1 和 names2

 using System;
 using System.Linq;

 namespace ConsoleApp1
 {
   class Program
   {
    static void Main(string[] args)
    {
        string[] names1 = new string[] { "Ava", "Emma", "Olivia" };
        string[] names2 = new string[] { "Olivia", "Sophia", "Emma" };
        Console.WriteLine(string.Join(", ", Program.UniqueNames(names1, names2)));
    }

    public static string[] UniqueNames(string[] names1, string[] names2)
    {

        names1 = names1.Where(s => !names2.Contains(s)).ToArray();
        names2 = names2.Where(s => !names1.Contains(s)).ToArray();
        return (names1, names2);

    }
  }
}

标签: c#

解决方案


从 C# 版本 7.0 开始,元组支持如下:

public static (string[], string[]) UniqueNames(string[] names1, string[] names2){/*…*/}

推荐阅读