zoukankan      html  css  js  c++  java
  • int、float、double In .Net之相互转换

    最近在检查我们公司某台Server时,发现Windows日志中记录了很多SystemToNumber的Crash Exception,问题原因为公司的同事Coding时都犯了一个最基本的原则性错误,鉴于此,觉得还是有必要再梳理下.Net中三个基本的数值类型(int、float、double),。

    Int :在.NET中,int是有符号的32位整型数值 ,无论处理器是32位还是64位,它的.NET框架类型是System.Int32 。                                                     

    Float:单精度浮点数,32位长度,1位实数符号位(原码表示),1位指数符号位,7位指数位(此八位为移码表示)以及23位数据位(补码表示),在.net中又称为Single。

    Double: 64位长度的双精度浮点数,1位符号位,11位指数位,52位数据位。

    三者的转换关系:

    1. int可以隐式转换成float和double;

    2.float只能强制转换成int,但是可以隐式转换成double;

    3.double只能强制转换成float和int。

    PS:

    注意区分:(1)Convert.ToInt32("56.89")  和  (2)Convert.ToInt(56.89)

    (1)的这种写法会导致抛出FormatException,所以要用(2)这种写法。


    Impossible = I'm possible
    Don't be the same, be better. Just do it.
    You'll be there.
  • 相关阅读:
    note
    deep learning
    matlab远程调试
    faster rcnn
    十一旅行
    python生成随机数
    python 读取mat文件
    opencv anaconda
    python文件操作
    python换行
  • 原文地址:https://www.cnblogs.com/gavin-king/p/4162449.html
Copyright © 2011-2022 走看看