我需要知道如何在 C# 中动态调整数组大小。在我下面编写的方法中,我需要能够返回一个数组,该数组仅包含用户输入的最多 8 个数字的数字。因此,如果用户决定他们只想输入 3 个数字,则数组应该只包含 3 个数字,而不是 8 个。
现在我知道数组在实例化时需要包含一个大小。那么如何在不使用列表的情况下解决这个问题呢?有没有办法在循环完成后重新调整数组的大小?
提前致谢。
static int[] fillArray()
{
int[] myArray;
myArray = new int[8];
int count = 0;
do
{
Console.Write("Please enter a number to add to the array or \"x\" to stop: ");
string consoleInput = Console.ReadLine();
if (consoleInput == "x")
{
Array.Resize(ref myArray, count);
return myArray;
}
else
{
myArray[count] = Convert.ToInt32(consoleInput);
++count;
}
} while (count < 8);
Array.Resize(ref myArray, count);
return myArray;
}
你可以使用 List<int>
在你的方法逻辑中,然后是 return myIntList.ToArray();
我是一名优秀的程序员,十分优秀!