while(true){
try{
break}
}
循环捕获异常,有异常直接catch,无异常跳出
while(true){
try{
break}
}
循环捕获异常,有异常直接catch,无异常跳出
try{里面放可能出错的代码}
catch(FormatException e)
{
console.writeLine("")
n1 = convert.toint32(console.readline)
n2 = convert.toint32(console.readline)
}
catch ( FormaEeception e)
查找程序是否异常
static void Main(string[] args)
{
Console.WriteLine("请输入两个数字,每行一个");
//string number1 = "";
//int n1 = Convert.ToInt32(Console.ReadLine());
//string number2 = Console.ReadLine();
//在外面定义一个全局变量
int n1 = 0;
int n2 = 0;
//try
//{
// //在try里调用全局变量,来进行传值
// n1 = Convert.ToInt32(Console.ReadLine());
// n2 = Convert.ToInt32(Console.ReadLine());
//}catch (FormatException e)
//{
// Console.WriteLine("你输入的数据,不符合规则,请重新输入!");
// n1 = Convert.ToInt32(Console.ReadLine());
// n2 = Convert.ToInt32(Console.ReadLine());
//}
//上述代码还有问题 后面的用户输入没有进行异常检测,所以下述进行了完善
while (true)
{
try {
n1 = Convert.ToInt32(Console.ReadLine());
n2 = Convert.ToInt32(Console.ReadLine());
break;
}
catch (FormatException e)
{
Console.WriteLine("你输入的数据,不符合规则,请重新输入!");
}
}
Console.WriteLine(n1 + n2);
}
检测不符合规定的数据
try
{
//捕捉可能出现的异常
break;//输入都合法执行
}
catch(FormatException e)
{
//输入数据不符合规则执行
}
finally
{
}
检测用户输入的是否数字。
int n1=0;
int n2=0;
while(true)
{
try
{
n1=Convert.Toint32(Console.ReadLine());
n2=Convert.Toint32(Console.ReadLine());
break;
}
catch(formatException e)
{
Console.WriteLine("你输入有误,请重新输入。");
}
}