-3

我在面试中遇到过这个问题如下?

让我们考虑名为的字符串

string gowtham="test1,test2,test3" ;

我需要转换为 IEnumerable 字符串函数

我需要一个输出作为

new[] {"test1", "test2","test3" }

我所做的是我通过用逗号分隔值来创建一个 string() 函数,如下所示

string[] mysamples= gowtham.Split(',');

我不知道如何进行之后

等待您的回复?

4

2 回答 2

3

每个数组已经是一个 IEnumerable,在你的情况下,如果你想显式转换为一个字符串的 IEnumerable,你可以使用

IEnumerable<string> mysamplesEnumerable = mysamples as IEnumerable<string>

如果你的面试官想要一个可以做到这一点的功能,你可以做到

    IEnumerable<string> SplitEnumByComa(string input)
    {
          return input.Split(',');
    }
于 2013-03-23T11:04:53.847 回答
-1

如果我清楚地理解您的问题,您可以使用这样的方法;

public static IEnumerable<string> YourMethod()
{
     string gowtham = "test1,test2,test3";
     string[] mysamples = gowtham.Split(',');
     List<string> senum = new List<string>();

     foreach ( string s in mysamples )
     {
         senum.Add(s);
     }

     return senum as IEnumerable<string>;
}

由于string[]实现IEnumerable<T>了接口,看来您只需要将其转换为IEnumerable<T>

编辑:既然MagnusLukeH警告过我,那么您也有一种简单的方法可以做。

public static IEnumerable<string> YourMethod()
{
     string gowtham = "test1,test2,test3";
     return gowtham .Split(',');
}
于 2013-03-23T11:06:07.443 回答