【发布时间】:2021-10-12 08:30:46
【问题描述】:
我是 C# 编程新手,第一次遇到无法解决的意外代码行为。
List<int[]> snakeCoords = new List<int[]>();
snakeCoords.Add(new int[2] { 25, 10 });
int direction = 0;
while (true)
{
Move(direction);
}
void Move(int direction)
{
int[] headCoords = new int[2];
headCoords = snakeCoords.Last();
switch (direction)
{
case 0:
headCoords[1]--;
snakeCoords.Add(headCoords);
break;
}
这段代码是我提取到Main{}中的,所以没有受到其他任何影响,仍然不起作用。结果是snakeCoords.Count = 迭代次数,其中列表的每个元素都是{25,(10 - 迭代次数)}。我期望和想要的结果是 {25,10}、{25,9}、{25,8} 等元素的列表。
我可以想到一些解决方法,但我真的很想了解这段代码的作用。
【问题讨论】: