c# - C# 删除声明大小的数组中未使用的索引
问题描述
我有一个任务来制定一个方法。该方法需要请求用户输入并将用户输入存储在一个数组中,该数组使用标记值进行初始化,直到数组被用户输入填充。该方法将打印用户输入的所有值。
到目前为止,该程序可以正常工作,除非用户没有填写所有数组。这意味着数组仍然使用初始化值(哨兵值),它将向数组的未使用索引显示一堆零。
例如: int [] sample = new int[5]; // 数组的最大大小 // 用户循环输入 3 个数字(例如 1、2、3,然后以 555 退出)
我如何让它显示为
1 2 3
代替
1 2 3 0 0
解决方案
当你创建一个新数组int [] sample = new int[5];
时,如果你没有定义一个默认值来初始化它,它将用零填充它。
另一个问题是,如果您定义一个包含 5 个元素的数组并且用户继续插入数据,您将无法存储该数据。您最好使用 List,因为您不需要初始大小,并且可以无限制地将数据插入其中。
List<int> usersInts = new List<int>();
userInts.Add(//userInputsHere);
推荐阅读
- symfony - Symfony 4 所有视图中的公共数据 - 最佳实践
- apache - Kylin 如何在 Hbase 中存储数据?
- python - 使用 ActionChains 在 Selenium Webdriver 中按 ctrl+t 不起作用
- regex - 正则表达式 - 在特定字符后查找第一个空格
- react-native - 错误:不支持同步 http 请求
- c++ - 从 .txt 文件中提取信息的最佳方式
- intellij-idea - 在 IntelliJ 的多个 .feature 文件中重构 Cucumber 步骤定义的名称
- python - AWS Lambda 中的 get_remaining_time_in_millis 有什么替代方法可用于 Google Cloud Function?
- c++ - 是否有理由使用 std::conjunction/std::disjunction 而不是“&&”/“||”上的折叠表达式?
- php - 在 PHP 的 for 循环中调用的存储 oracle 过程仅适用于最后一次迭代