首页 > 解决方案 > C# 删除声明大小的数组中未使用的索引

问题描述

我有一个任务来制定一个方法。该方法需要请求用户输入并将用户输入存储在一个数组中,该数组使用标记值进行初始化,直到数组被用户输入填充。该方法将打印用户输入的所有值。

到目前为止,该程序可以正常工作,除非用户没有填写所有数组。这意味着数组仍然使用初始化值(哨兵值),它将向数组的未使用索引显示一堆零。

例如: int [] sample = new int[5]; // 数组的最大大小 // 用户循环输入 3 个数字(例如 1、2、3,然后以 555 退出)

我如何让它显示为

1 2 3

代替

1 2 3 0 0

标签: c#arrays

解决方案


当你创建一个新数组int [] sample = new int[5];时,如果你没有定义一个默认值来初始化它,它将用零填充它。

另一个问题是,如果您定义一个包含 5 个元素的数组并且用户继续插入数据,您将无法存储该数据。您最好使用 List,因为您不需要初始大小,并且可以无限制地将数据插入其中。

List<int> usersInts = new List<int>();

userInts.Add(//userInputsHere);

推荐阅读