zoukankan      html  css  js  c++  java
  • 关于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);
        }

    好啦~下周见~

  • 相关阅读:
    BZOJ 3629 JLOI2014 聪明的燕姿 约数和+DFS
    [BZOJ3594] [Scoi2014]方伯伯的玉米田 二维树状数组优化dp
    BZOJ 3319 黑白树 并查集+线段树
    BZOJ 2500 幸福的道路(race) 树上直径+平衡树
    BZOJ1875: [SDOI2009]HH去散步 图上边矩乘
    【BZOJ3887】【Usaco2015 Jan】Grass Cownoisseur Tarjan+Spfa
    NOIP2010 引水入城 贪心+DFS
    【BZOJ3038】上帝造题的七分钟2 线段树
    COGS 930. [河南省队2012] 找第k小的数 主席树
    BZOJ2631 tree(伍一鸣) LCT 秘制标记
  • 原文地址:https://www.cnblogs.com/baobaoni/p/4398602.html
Copyright © 2011-2022 走看看