• int.parse("abcd")为什么出错,应该怎样避免这个问题


    一、int.Parse()是一种类容转换;表示将数字内容的字符串转为int类型。  

    (1)如果字符串为空,则抛出ArgumentNullException异常;  

    (2)如果字符串内容不是数字,则抛出FormatException异常;  

    (3)如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常;

    二、要将字符串转化为整型可以用以下三种方法。

    (1) Convert.ToInt32()参数为 null 时,返回 0;

            Convert.ToInt32 参数为 "" 时,抛出异常; 

            Convert.ToInt32 可以转换的类型较多;

    (2)(int) 是一种类型转换;当我们int类型到long,float,double,decimal类型,可以使用隐式转换,

            但是当我们从long类型到int类型就需要使用显式转换,否则会产生编译错误。

    (3)int.TryParse()与 int.Parse 又较为类似,但它不会产生异常,转换成功返回 true,转换失败返回 false。  

           最后一个参数为输出值,如果转换失败,输出值为 0,如果转换成功,输出值为转换后的int值。

    三、所以我们可以用int.TryParse()取而代之。

          以下是代码:

    try
                {
                    int res = int.Parse(textBox1.Text);
                    label.Text = res + "";
                }
                catch (Exception exception)
                {
                    label.Text = exception.ToString();
                }
  • 相关阅读:
    linux tcpdump抓包,wireshark实时解析
    TLS协议分析
    sqlite sql语句关键字GROUP BY的理解
    使用 openssl 生成证书
    linux C单元测试工具CUnit的编译安装及使用
    http短连接大量time wait解决方案
    gdb调试行号错位
    libevent 多线程
    C语言单元测试
    客户端端口分配
  • 原文地址:https://www.cnblogs.com/2522150225qq/p/4399324.html
Copyright © 2020-2023  润新知