查看提高代码可读性挑战活动的解决方案

已完成

以下代码是上一单元中所述挑战的一种可能的解决方案。

/*
   This code reverses a message, counts the number of times 
   a particular character appears, then prints the results
   to the console window.
 */

string originalMessage = "The quick brown fox jumps over the lazy dog.";

char[] message = originalMessage.ToCharArray();
Array.Reverse(message);

int letterCount = 0;

foreach (char letter in message)
{
    if (letter == 'o')
    {
        letterCount++;
    }
}

string newMessage = new String(message);

Console.WriteLine(newMessage);
Console.WriteLine($"'o' appears {letterCount} times.");

该代码仅仅是“一种可能解决方案”。 你可能会遇到一些不同的变量名称、不同的垂直间距和制表符缩进。 以下是所做更改的列表。

  • 该代码在顶部的多行注释中包含对整个代码列表试图完成的操作的更高级别描述。 你可能会认为,这是对原始代码注释的一个小改进,但鉴于代码的质询描述,还没有更多可用的上下文。
  • 单独注释已删除,因为这些注释未真正表明代码的用途和功能。
  • 添加了几个空白行来改进代码列表的表述。 如果代码行看起来相似或需要相互协作以完成一个小任务,请将代码行放在一起。
  • 已添加换行符和制表符,用于改进 foreach 语句和 if 语句的外观。
  • 已应用局部变量命名约定来更好地传达每个值的用途。

如果你发现了相同的问题并以类似方式解决了这些问题,那么祝贺你! 继续进行下一个单元中的知识检查。

重要

如果在完成此项挑战时遇到问题,可能需要先回顾前面的几个单元,然后再继续。