关于int.Parse()的异常

一、int.Parse(string 变量名)

该方式是将数字内容的字符串转换为int类型

1.如果字符串的内容为Null ,则抛出ArgumentNullException异常;

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

3.使用该方法只能处理字符串的内容,而且转换后的字符串内容要在int类型的可表示范围之内,若超出,则抛出OverflowException异常。

二、在网上搜索相关内容,Convert.ToInt32()、int.Parse()、int.TryParse()、(int)这些函数都可以将其他类型转化为int型

1.Convert.ToInt32()与int.Parse()的区别:

(1)这两个方法的最大不同是它们对NULL值的处理方法:

    Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常

(2)当参数是浮点数时:

   a. Convert.ToInt32(double value)
       如果 value 为两个整数中间的数字,则返回二者中的偶数;即 3.5转换为4,4.5 转换为 4,而 5.5 转换为 6。  不过4.6可以转换为5,4.4转换为4
   b. int.Parse("4.5") 
       直接报错:"输入字符串的格式不正确"

(3)转换对象不同:

   a.int.Parse是转换String为int
   b.Convert.ToInt32是转换继承自Object的对象为int的

      当你得到一个object对象,你想把它转换为int,用int.Parse就不可以,要用Convert.ToInt32.

2.int.TryParse()与int.Parse():

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

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

3.关于(int):

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

三、这是网上找到的代码,可作为以后的联系素材:

class Program
{
    static void Main(string[] args)
    {
        string str = "1,2,3,4,5,";
        Console.WriteLine(str.Substring(0, str.Length - 1));
 
        int nums = 0;
        string num = null;
        Int32.TryParse(num, out nums);
        Console.WriteLine(nums);
 
        /*
        int nums = 0;
        string num = "12345";
        Int32.TryParse(num, out nums);
        Console.WriteLine(nums);
         */
 
        nums = Convert.ToInt32(num);
 
        nums = int.Parse(num);
    }

好啦~下周见~

转载于:https://www.cnblogs.com/baobaoni/p/4398602.html

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值