因此,在我的汽车商店程序中,当人们输入一个无效字符不止一次时,我一直试图找到一种抛出异常的方法,所以我决定尝试在Console.ReadLine() == null时使用quite循环,但似乎无法完全弄清楚。谢谢你的帮助。我只包括了我尝试使用while循环尝试捕捉的一个片段。
Console.Out.WriteLine("What is the car make? Toyota, Ford, etc.");
carMake = Console.ReadLine();
Console.Out.WriteLine("What is the car model? Corvette, Focus, etc.");
carModel = Console.ReadLine();
Console.Out.WriteLine("What is the car price? Only numbers please.");
try
{
carPrice = int.Parse(Console.ReadLine());
}
catch
{
while (Console.ReadLine() == null)
{
Console.Out.WriteLine("You must ONLY enter numbers");
carPrice = int.Parse(Console.ReadLine());
}
}发布于 2022-09-14 05:59:39
使用TryParse而不是解析,消除了异常处理的需要:
Console.WriteLine("What is the car price? Only numbers please.");
while(!int.TryParse(Console.ReadLine(), out var carPrice)){
Console.Out.WriteLine("You must ONLY enter numbers");
}将这样的代码片段放入助手函数中从控制台读取数字也可能是个好主意。
https://stackoverflow.com/questions/73712030
复制相似问题