c# - 我该如何做用户输入时间 word.Add
问题描述
我想用单词创建一个列表,然后比较它们。首先,我需要将字符串添加到 List for wordsnumber 次。如果用户输入 wordsnumber = 5,我该怎么写?
while (wordsnumber < 1 || wordsnumber > 20)
{
Console.WriteLine("*Leader Instructor: You must follow my instructions !");
Console.Write("Your number: ");
wordsnumber = Convert.ToInt32(Console.ReadLine());
}
if(wordsnumber >= 1 || wordsnumber < 20)
{
Console.WriteLine("*Leader Instructor: Awesome.");
}
List<string> words = new List<string>();
解决方案
您可以使用正常for
循环来要求用户输入wordsNumber
单词数量。通常for
循环的结构看起来像:
List<string> words = new List<string>();
for (int i = 0; i < wordsnumber; i++)
{
Console.Write($"Enter word #{i + 1}: ");
words.Add(Console.ReadLine());
}
其他几件事:您应该使用int.TryParse
来尝试获取数字,这样程序在输入一些非数字文本时不会崩溃,并且您不需要if
条件,因为while
循环已经强制执行有效的数字范围。只是为了好玩,我还展示了如何将领导讲师的文字涂成红色,这样它会更加突出:
int wordsnumber;
Console.WriteLine("Enter the number of words (1 - 20): ");
while (!int.TryParse(Console.ReadLine(), out wordsnumber) ||
wordsnumber < 0 || wordsnumber > 20)
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("*Leader Instructor: You must follow my instructions !");
Console.ResetColor();
Console.Write("Enter the number of words (1 - 20): ");
}
推荐阅读
- apache-spark - 为什么最新的 Hadoop 中没有内存计算功能?
- arrays - 使用循环打印到不同的标签
- scala - Spark Scala SaveMode.Append - 它只是追加还是更新?
- cron - 如何设置 cron 作业在每小时 09 19 29 39 49 59 分钟运行
- c# - Microsoft.Data.SQLite:找不到库 e_sqlite3
- c# - 在任务之间划分for循环
- android-studio - “不支持键“target-densitydpi”。在 webVIew 中加载 url
- reactjs - 无法编译 react.js 代码。在第 7 行出现错误
- hibernate - 如何使用 Configuration.addCacheableFile 进行休眠配置
- django - 如何在 django 中插入不同的电子邮件 mysql