• string转成int的几种方法


    今天看教程偶然看到int.parse()和int.TryParse()也可以把string转成int,而且很实用,所以对string转成int的方法做了总结。 

    1、(int)是一种类型转换;当我们觟nt类型到long,float,double,decimal类型,可以使用隐式转换,但是当我们从long类型到int类型就需要使用显式转换,否则会产生编译错误。 

    2、Convert.ToInt32()是一种类容转换;但它不限于将字符串转为int类型,还可以是其它类型的参数。 

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

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

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

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

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

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

    比较:

      Convert.ToInt32 参数为 null 时,返回 0; int.Parse 参数为 null 时,抛出异常。

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

      Convert.ToInt32 可以转换的类型较多; int.Parse 只能转换数字类型的字符串。 

     

    int.TryParse()在提交web表单中常常要用到,因为提交过来的值都是string如果需要int型的数据可以直接用int.TryParse()转换且还可以判断提交过来的数据是不是int型数据。

    int i = -1; bool b = int.TryParse(null, out i); 执行完毕后,b等于false,i等于0,而不是等于-1,切记。

    int i = -1; bool b = int.TryParse("123", out i);执行完毕后,b等于true,i等于123。 

  • 相关阅读:
    leetcode链表--15、reverse-nodes-in-k-group(按照k值进行k个结点的逆序)
    4、消除重复元素--网易2017春招
    24、剑指offer--二叉树中和为某一值的路径
    leetcode链表--14、add-two-numbers(两链表相加 得到新链表)
    3、调整队形--网易2017春招
    2、赶去公司--网易2017春招
    1、双核处理--网易2017春招
    CSS3自定义滚动条样式 -webkit-scrollbar
    git安装使用
    div+css居中
  • 原文地址:https://www.cnblogs.com/bemawen/p/2812076.html
Copyright © 2020-2023  润新知