我正在尝试创建一个方法,将数组中第一个和最后一个字符之间的每个字符移动一个点.此外,第一个到最后一个字符必须“移动”到数组中的第二个点([1]).简而言之,我希望’abcdef’成为’
这就是我想出的:
if (myArray.Length > 3)
{
char savechar = myArray[myArray.Length - 2];
for (int t = 1; t < (myArray.Length - 2); t++)
{
myArray[t++] = myArray[t];
}
myArray[1] = savechar;
}
问题在于,它只是将第二个字符移动到最后,而不是将所有字符移动到一个位置. (我知道为什么会这样,我只是不知道如何解决这个问题)
有人帮忙吗?
>我认为您不打算在循环中使用“”.这会改变t的值而不是必需的.
这是结果代码:
if (myArray.Length > 3)
{
char savechar = myArray[myArray.Length - 2];
for (int t = myArray.Length - 2; t > 1; t--)
{
myArray[t] = myArray[t-1];
}
myArray[1] = savechar;
}
