c# - 如何使用 foreach 将输入值存储在数组中?
问题描述
这可能是一个简单的,但作为一个初学者,我目前被卡住了。我试过tempArray[i] = inputTemp; 但是在打印列表时似乎没有正确存储值。有任何想法吗?
foreach (int i in tempArray)
{
Console.WriteLine("Enter a value");
double inputTemp = Convert.ToDouble(Console.ReadLine());
tempArray[i] = inputTemp;
}
// Print out the array
foreach (double i in tempArray)
{
Console.WriteLine(i);
}
解决方案
它不起作用的原因是foreach
循环遍历tempArray
. 因此i
不是索引,实际上是 的值tempArray
,在每次迭代中可能为 0,因为该数组尚未使用值初始化。
您想改为使用for
来制作i
数组索引。
for (int i = 0; i < tempArray.Length; i++)
{
Console.WriteLine("Enter a value");
double inputTemp = Convert.ToDouble(Console.ReadLine());
tempArray[i] = inputTemp;
}
推荐阅读
- php - 如何防止会话变量被覆盖并显示结果?
- rust - 如何指定工作区成员只能在特定平台上构建?
- android - 如何将 ionic app android api 级别更新到 26 ..?
- angular - netcore mvc 在 spa 上的存在缓存了角度构建并破坏了 hmr
- pandas - 将 pandas datetime64[ns] 转换为 matplotlib date-float 用于 seaborn tsplot 中的日期 x 轴
- vba - Excel 公式到 VBA 函数
- .htaccess - 重定向重写 URL 地址
- python-3.x - 如何找到数组中元素的绝对值?
- docker - 同一网络上的 Docker 容器无法访问彼此的暴露端口(Linux)
- c++ - 带有正交编码器 600ppr 的 Arduino RPM 代码