• c# 数据类型转换


    隐式转换

      byte, short, int, long, fload, double等根据其顺序向后可以隐式自动完成类型的转换,隐式转移的前提是目标类型精度高于源类型,如:short隐式转换为int,因其int精度高于short,所以隐式完成转换后,其数据不丢失。如果需要逆向转换,就必须强制转换,强制转换的代价是就是精度丢失、数据溢出。

     float v1 = (float)345.22;
     long v2 = long.MaxValue;
    
     int v3 = (int)v1;     //强制转换,损失精度 return 345 
     int v4 = (int(v2);    //强制转换,数据溢出 return -1;

    使用Convert类转换数据类型

      Convert类可以实现基本类型间的数据转换,Convert.ToString() Convert.ToInt32()……。

    各种返回测试

    int value = Convert.ToInt32("123");    //return 123 
    int value = int.Parse("123");        //return 123;
    int value = (int)2.5;  //截断:return 2;
    int value = Convert.ToInt32(2.5);  //以为会四舍五入,实测为五舍六入?即:2.5 return 2, 2.6 return 3;
    int value = Convert.ToInt32("");   // throw System.FormatException
    
    Convert.ToString(null); //return null;
    Convert.ToString(DBNull.Value); //return "";
    DbNull.Value as string // 类型转换异常
    null as string    //return null;
  • 相关阅读:
    学习进度7
    《机器学习十讲》学习报告六
    《机器学习十讲》学习报告五
    《机器学习十讲》学习报告四
    《机器学习十讲》学习报告三
    华为机试题 仿苹果
    C++ STL 六大组件的交互关系
    C++ STL 源码 阅读
    抽象类和接口的区别
    重载 & 重写 在java 中
  • 原文地址:https://www.cnblogs.com/ybtools/p/6472994.html
Copyright © 2020-2023  润新知