我正在使用 switch
语句,并想知道如何忽略输入值的大小写。
这是我的代码:
using System;
namespace SwitchStatements
{
class MainClass
{
public static void Main(string[] args)
{
Start:
Console.WriteLine("Please Input the Grade");
char grade = Convert.ToChar(Console.ReadLine());
switch (grade)
{
case 'A':
Console.WriteLine("Excellent Work!");
break;
case 'B':
Console.WriteLine("Very Good Effort! Just a couple of Errors =)");
break;
case 'C':
Console.WriteLine("You Passed. Push Yourself Next Time");
break;
case 'D':
Console.WriteLine("Better put in more effort next time. I know you can do better");
break;
default:
Console.WriteLine("Invalid Grade.");
break;
}
Console.ReadKey();
goto Start;
}
}
}
如果我输入'a'而不是'A',它会返回默认响应。
我可以使用某种比较吗?如果可以,在哪里放置?
Console.ReadLine()
允许用户输入多个字符,在这种情况下,Convert.ToChar()
会给您带来错误 :)。 - sujith karivelilstring
值作为条件,因此无需转换回char
; 2)KeyChar
的值本身就是一个char
,因此将其转换为string
是不必要的,因为您可以使用char.ToUpper
; 3)通常不需要使用char
,因为您可以使用ConsoleKeyInfo.Key
,它是一个枚举值,因此可以轻松地用作开关条件,而不必担心字符大小写。 - Abion47