我有一个关于验证字符串用户输入的问题。
我有一个字符串变量集,并且有readLine()
,但当运行时:
Console.WriteLine("Start by typing 'hello'");
String activity = Console.ReadLine();
if ("hello".Equals(activity))
{
Console.WriteLine("Hi!");
}
else
{
Console.WriteLine("Please try again.");
WakeUp();
}
我修改了一些单词,但它给出了我试图使用的例子。
不管用户输入什么,它总是返回else{}
语句。
我有什么东西不见了吗?获取和验证用户输入的更好方法?
很抱歉造成任何混淆。如果这还不够,我可以编辑并发布我的确切代码。
那么,如果不创建一个新的帖子,我该如何将其写进switch语句中呢?
switch (activity){
case "hello": console.WriteLine("HI!");
break;
case "bye": Console.WriteLine("Goodbye.");
break;
default: Console.WriteLine("Please try again.");
此示例是否有助于查找您的问题?
Console.WriteLine("type 'q' to quit");
while (true)
{
string input = Console.ReadLine();
if (input == "q")
{
break;
}
else
{
Console.WriteLine("You entered '{0}'", input);
}
}
您的示例对我来说很好。在比较字符串时,根据您的意图,降低大小写并去掉空白可能会很有用。("你好"不等于"hello")
Console.WriteLine("Start by typing 'hello'");
String activity = Console.ReadLine();
activity = activity.Trim().ToLower(); // try adding this line
if ("hello".Equals(activity))
Console.WriteLine("Hi!");
else
{
Console.WriteLine("Please try again.");
WakeUp();
}