24.try块怎么用 C#例子

这是一个用英语写的try-catch例子

简单来说就是一个try,try里面的代码可能会出错,然后有两个catch,规定了具体的错误是什么

如果发生相应的错误,就会把错误信息存到err里,err.Message是一个字符串格式的提示信息,可以打印出来。

最后用catch(Exception),可以捕捉大部分错误。

finally部分是无论代码出错与否都会执行的

简单来说就是我的代码在try里面出的错,可以被catch捕捉到,然后跳转到catch的代码位置继续执行。

cs 复制代码
using System;

class Program
{
    static void Main()
    {
        Console.WriteLine("请输入一个数字:");
        string userinput=Console.ReadLine();

        try
        {
            int num = Convert.ToInt32(userinput);
            Console.WriteLine("input is " + num);
        }
        catch(FormatException err)
        {
            Console.WriteLine(err.Message);
        }
        catch (OverflowException err)
        {
            Console.WriteLine(err.Message);
        }
        catch(Exception err)
        {
            Console.WriteLine(err.Message);
        }
        finally
        {
            Console.WriteLine("Finish");
        }
    }
}

输出结果:

cs 复制代码
请输入一个数字:
jjgjg
The input string 'jjgjg' was not in a correct format.
Finish
相关推荐
Monkey_Xuan5 分钟前
C#中的引用传递和值传递
unity·c#
CreasyChan28 分钟前
C# LINQ 深度解析:优缺点与性能陷阱
unity·c#·游戏开发
毕设源码-朱学姐39 分钟前
【开题答辩全过程】以 基于Java的人体骨骼健康知识普及系统为例,包含答辩的问题和答案
java·开发语言
lly20240643 分钟前
Julia 函数
开发语言
sheji34161 小时前
【开题答辩全过程】以 基于JAVA的社团管理系统为例,包含答辩的问题和答案
java·开发语言
周杰伦_Jay1 小时前
【GOFrame】模块化框架与生产级实践
开发语言·gitlab·github
Simon席玉1 小时前
C++的命名重整
开发语言·c++·华为·harmonyos·arkts
chao1898441 小时前
MATLAB中的多重网格算法与计算流体动力学
开发语言·算法·matlab
木盏1 小时前
三维高斯的分裂
开发语言·python
精神小伙就是猛1 小时前
C# sealed密封 追本溯源
开发语言·c#