Visual C#将自定义IEnumerable转换为string []

时间:2016-04-25 04:51:26

标签: c# arrays string visual-studio plugins

我正在用C#编写一个插件代码,并且有一个自定义IEnumerable实际上是一个字符串数组。但是,不能对数组元素执行字符串操作,因为它们不属于<string>类型。但我需要它们成为字符串,我必须将它们作为字符串进行操作。

所以我添加了这两行代码来将数组转换为字符串:

var arrayRawSourceText = EditorController.ActiveDocument.ActiveSegmentPair.Source.AllSubItems.ToArray();
string[] arraySourceText = new string[arrayRawSourceText.Length];
for (int i = 0; i < arrayRawSourceText.Length; i++) { arraySourceText[i] = arrayRawSourceText[i].ToString(); }

只有两行,但我想知道是否有更简单的方法将数组转换为<string>。像lambda表达式或任何其他方式使这更简单。

2 个答案:

答案 0 :(得分:1)

如果AllSubItems实施IEnumerable,我猜这个代码段应该有效:

var arraySourceText = EditorController.ActiveDocument
                                      .ActiveSegmentPair
                                      .Source
                                      .AllSubItems
                                      .Select(t => t.ToString())
                                      .ToArray();

答案 1 :(得分:0)

我已经看到你已经接受了答案,但是对于进一步的搜索者来说也许这也适合:

//UPDATING PLAYING STATE 
switch (gameState)
{
    ***case*** State.Playing: 
    {
        // TODO: Add your update logic here
        int rightside = GraphicsDevice.Viewport.Width;
        int leftside = 0; 

         //moving all of the aliens 
         for (int r = 0; r < rows; r++)
         for (int c = 0; c < collumes; c++)
    {