【问题标题】:Trouble understanding foreach无法理解 foreach
【发布时间】:2018-04-23 18:37:56
【问题描述】:

针对每个问题

char[] charArray = zig.ToCharArray(); //puts each character in zigs in an array
Array.Reverse(charArray); // Reverses the array 

foreach (char zigArray in charArray) 
{
    Console.Write(zigArray);
}
Console.ReadLine();

这个块按我想要的方式工作,但我不明白为什么我需要一个 for 每个语句。我很困惑为什么我不应该在反转字符串后只执行 console.write。

(我正在学习教程)

【问题讨论】:

  • 试着按照你的方式去做,看看会发生什么。编程的美妙之处在于,如果你有不同的想法——你可以尝试一下,看看它是否有效。
  • 我们也不知道您为什么需要 foreach 语句。这取决于教程试图教你什么。 foreach 循环在 C# 中非常重要,它用于迭代某些东西(通常是某种集合)。你应该试试你的Console.Write(charArray) 看看会发生什么,然后思考char[]string 之间的区别
  • 请注意Array.Reverse(string.ToCharArray()) does not reverse strings
  • 启动你的教程。

标签: c#


【解决方案1】:

简单的答案是:试试看!

我做到了。答案是:没有。屏幕上的最终结果是相同的,但是,一个小细节,反转的字符串现在是一个字符数组,这使得立即看到发生了什么变得有点困难。

在字符数组上调用 Console.Write 会按预期输出文本,并重现与 foreach 完全相同的结果(而不是 System.Array 或您在打印 object 时可能会看到的类似结果)。

那他们为什么使用foreach?可能是为了了解您如何迭代集合。我想这只是一个坏例子,继续。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-12
    • 1970-01-01
    • 2023-02-26
    • 2014-05-29
    • 2016-02-10
    相关资源
    最近更新 更多