使用C#在数组中移动元素

Ale*_*lex 2 c# arrays element

有没有办法在数组中移动项目?例如:

int[] myArray = {1,2,3,4};
Run Code Online (Sandbox Code Playgroud)

第二个元素成为最后一个:

int[] myArray = {1,3,4,2};
Run Code Online (Sandbox Code Playgroud)

PS:不,那不是作业.我可以想到至少一个解决方案,但它需要相当困难的实现:

  • 首先,我们将第二个元素保存到Int
  • 然后我们从数组中删除这个元素
  • 然后我们在数组的最后添加新元素

还有其他(阅读 - 更简单)的方法吗?

its*_*e86 8

使用数组没有简单的方法.你必须循环遍历数组,将每个元素移动到正在移动的索引,然后在最后重新插入该元素.你总是可以使用它List<int>来做到这一点.

List<int> list = myArray.ToList();
int value = list[1];
list.RemoveAt(1);
list.Add(value);
myArray = list.ToArray();
Run Code Online (Sandbox Code Playgroud)