我正在用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表达式或任何其他方式使这更简单。
答案 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++)
{