的问题是:在C#中的尝试catch块的疑问#
应用程序应询问用户要预订的总票数。如果预订机票的总数超过可用机票,则预订机票时,申请应引发例外。我不知道为什么它没有显示错误当我这样做,我想出了这个解决方案:
using System;
namespace Ticket
{
class blah
{
public void abc()
{
int numberOfTickets;
int numberOfAvailableTickets=10;
int cost = 100;
int pay;
Console.WriteLine("how many tickets do you need");
numberOfTickets = Convert.ToInt32(Console.ReadLine());
try
{
if (numberOfTickets < numberOfAvailableTickets)
{
pay = 100 * numberOfTickets;
Console.WriteLine("Pay please");
Console.WriteLine(pay);
}
}
if(numberOfTickets>numberOfAvailableTickets)
{
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
}
}
}
class Theater
{
static void Main(string[] args)
{
blah hi = new blah();
hi.abc();
Console.ReadLine();
}
}
}
*“如果预订机票总数超过可用机票,应用程序应该引发异常”* - 不,绝对不应该。在出乎意料的情况下引发异常,而不是因为某些数字遇到了自然边界。 – Tomalak
@Tomalak你是对的,但这似乎更像是功课... – Yahia
你有混合如果和尝试赶上。该代码没有读取任何含义。 –