zoukankan      html  css  js  c++  java
  • C#类型转换

    |   版权声明:本文为博主原创文章,未经博主允许不得转载。

    1. 隐式转换:隐式转换就是系统默认的、不需要加以声明就可以进行的转换。
           *注意:1》.只能进行同值类型之间的转换(即double不能和string进行隐式转换)
                     2》.隐式转换只支持从小范围的数转换到大范围的数(即long  --->  int是不可行的,因为long的范围在(-2^63~2^63-1),

    而int的范围在(-2^31~2^31-1)明显小于long的范围) 

                                     

          3》.大精度的不能转换成小精度的数:(即decimal类型的不能转换成double类型,因为decimal的精度能准确的表示到27~28

    位数值,而double却只能表示到15~16为数值,因此如果将decimal转换成double,将会丢失很多位的数据,因此大精度的类型不能转换成

    小精度的类型)

    2.c#支持的隐式转换

     1 从sbyte类型到short,int,long,float,double,或decimal类型。
     2 从byte类型到short,ushort,int,uint,long,ulong,float,double,或decimal类型。
     3 从short类型到int,long,float,double,或decimal类型。
     4 从ushort类型到int,uint,long,ulong,float,double,或decimal类型。
     5 从int类型到long,float,double,或decimal类型。
     6 从uint类型到long,ulong,float,double,或decimal类型。
     7 从long类型到float,double,或decimal类型。
     8 从ulong类型到float,double,或decimal类型。
     9 从char类型到ushort,int,uint,long,ulong,float,double,或decimal类型。
    10 从float类型到double类型。

     

    3.显示转换(强制类型转换):需要明确的指定转换类型,显示转换可能导致信息丢失(精度上可能产生损失)

      *注意:同样的显示转换,也必须是同值类型的转换,不能从double转换为string

      示例:

      1 double s; 2 int S= (int)s; 

     

    4.拆箱和装箱

      装箱:把一个值类型变量装箱也就是创建一个object对象,并将这个值类型变量的值复制给这个object对象

    1 //隐式转换,obj为创建的object对象的引用
    2 int i = 10;
    3 object obj = i;
    4 //显示转换
    5 int i = 106 object obj = object(i);

      拆箱:拆箱操作是指将一个引用类型显示转换成一个值类型。

      1 object obj = new object(); 2 int j = (int)obj; 

    5.用户使用Console.ReadLine()来转换用户输入内容的类型。
      在这里使用新的语句: Convert.ToType();来实现
      如下:

    1 Convert.ToDouble();                 //将String转换成双精度类型
    2 Convert.ToInt32();                    //将String转换成int类型
    3 Convert.ToInt64();                     //将String转换成long类型
    4 .........

      使用示例:

    1 string str;
    2 int age;
    3 Console.WriteLine("请输入你的年龄: ");
    4 str = Console.ReadLine();
    5 age = Convert.ToInt32(str);
    6 Console.WriteLine("我今年 {0} 岁了!", age);
    7 Console.ReadKey();
  • 相关阅读:
    第二篇 Flask 中的 Render Redirect HttpResponse
    第一篇 你好,我叫Flask
    redis发布订阅
    redis学习
    mysql+centos7+主从复制
    Linux系统基础优化及常用命令
    vim与程序员
    Shell基本命令
    js bom和dom
    javaScript基础
  • 原文地址:https://www.cnblogs.com/geore/p/5792436.html
Copyright © 2011-2022 走看看