C# 类型转换

  类型转换从根本上说是类型铸造,或者说是把数据从一种类型转换为另一种类型。在 C# 中,类型铸造有两种形式:

  隐式类型转换 - 这些转换是 C# 默认的以安全方式进行的转换。例如,从小的整数类型转换为大的整数类型,从派生类转换为基类。

  显式类型转换 - 这些转换是通过用户使用预定义的函数显式完成的。显式转换需要强制转换运算符。

  下面的实例显示了一个显式的类型转换:

  namespace TypeConversionApplication

  {

  class ExplicitConversion

  {

  static void Main(string[] args)

  {

  double d = 5673.74;

  int i;

  // 强制转换 double 为 int

  i = (int)d;

  Console.WriteLine(i);

  Console.ReadKey();

  }

  }

  }

  当上面的代码被编译和执行时,它会产生下列结果:

  5673

  C# 类型转换方法

  C# 提供了下列内置的类型转换方法:

  序号方法 & 描述

  1ToBoolean

  如果可能的话,把类型转换为布尔型。

  2ToByte

  把类型转换为字节类型。

  3ToChar

  如果可能的话,把类型转换为单个 Unicode 字符类型。

  4ToDateTime

  把类型(整数或字符串类型)转换为 日期-时间 结构。

  5ToDecimal

  把浮点型或整数类型转换为十进制类型。

  6ToDouble

  把类型转换为双精度浮点型。

  7ToInt16

  把类型转换为 16 位整数类型。

  8ToInt32

  把类型转换为 32 位整数类型。

  9ToInt64

  把类型转换为 64 位整数类型。

  10ToSbyte

  把类型转换为有符号字节类型。

  11ToSingle

  把类型转换为小浮点数类型。

  12ToString

  把类型转换为字符串类型。

  13ToType

  把类型转换为指定类型。

  14ToUInt16

  把类型转换为 16 位无符号整数类型。

  15ToUInt32

  把类型转换为 32 位无符号整数类型。

  16ToUInt64

  把类型转换为 64 位无符号整数类型。

  下面的实例把不同值的类型转换为字符串类型:

  namespace TypeConversionApplication

  {

  class StringConversion

  {

  static void Main(string[] args)

  {

  int i = 75;

  float f = 53.005f;

  double d = 2345.7652;

  bool b = true;

  Console.WriteLine(i.ToString());

  Console.WriteLine(f.ToString());

  Console.WriteLine(d.ToString());

  Console.WriteLine(b.ToString());

  Console.ReadKey();

  }

  }

  }

  当上面的代码被编译和执行时,它会产生下列结果:

  75

  53.005

  2345.7652

  True

  本文转载自:w3cschool(编辑:雷林鹏 来源:网络)

雷林鹏分享:C# 类型转换的更多相关文章

  1. 雷林鹏分享:C# 数据类型

    C# 数据类型 在 C# 中,变量分为以下几种类型: 值类型(Value types) 引用类型(Reference types) 指针类型(Pointer types) 值类型(Value type ...

  2. 雷林鹏分享:C# 可空类型(Nullable)

    C# 可空类型(Nullable) C# 可空类型(Nullable) C# 提供了一个特殊的数据类型,nullable 类型(可空类型),可空类型可以表示其基础值类型正常范围内的值,再加上一个 nu ...

  3. 雷林鹏分享:C# 异常处理

    C# 异常处理 异常是在程序执行期间出现的问题.C# 中的异常是对程序运行时出现的特殊情况的一种响应,比如尝试除以零. 异常提供了一种把程序控制权从某个部分转移到另一个部分的方式.C# 异常处理时建立 ...

  4. 雷林鹏分享:CodeIgniter 数据库操作

    在平时项目开发过程中,除了处理那些繁琐的逻辑过程外,还有一个重要的任务就是对数据库的操作处理.这里总结下自己平时使用CI过程中使用的如何对数据库进行操作处理. 在CI框架中,我们一般会把对数据库的操作 ...

  5. 雷林鹏分享:YAF路由问题

    这2天休年假,在家宅着学习研究了YAF框架,用YAF做过APP接口的项目,但是没有用来做过WEB方面的应用.趁着这2天在家想把博客用YAF进行一下改版,目的也想进一步学习一下YAF. 在这过程中遇到不 ...

  6. 雷林鹏分享:url中加号引发的错误

    刚发现了博客的一个bug,标签页中一些标签带有空格,在url输出中使用了 urlencode 函数进行处理,导致空格被转换成了加号(+),这时通过url访问时会出现错误: 临时解决方法是在urlcod ...

  7. 雷林鹏分享:Composer 安装

    下午在安装 Laravel 框架过程中,遇到了不少问题,因为 Laravel 的安装依赖于 composer,这里就先介绍一下 composer 的安装方法: 安装方法: #下载 sudo curl ...

  8. 雷林鹏分享:Laravel 安装

    前面我们介绍我了 composer安装,这里我们接着来介绍 Laravel框架的安装. 这里我们安装的是laravel 4 项目下载地址:https://github.com/laravel/lara ...

  9. 雷林鹏分享:CodeIgniter常用的数据库操作类

    在 CodeIgniter 中,使用数据库是非常频繁的事情.你可以使用框架自带的数据库类,就能便捷地进行数据库操作. 初始化数据库类 依据你的数据库配置载入并初始化数据库类: $this->lo ...

随机推荐

  1. 存根类(stub) 是什么意思?有什么作用?(转)

    存根类是一个类,它实现了一个接口,但是实现后的每个方法都是空的.  它的作用是:如果一个接口有很多方法,如果要实现这个接口,就要实现所有的方法.但是一个类从业务来说,可能只需要其中一两个方法.   如 ...

  2. c++中ifstream一次读取整个文件

    转载:http://www.cnblogs.com/kex1n/p/4028428.html 第一种方法: 读取至std::string的情况: #include <string> #in ...

  3. Jenkins 总结

    步骤: 1,安装Jenkins 2,运行Jenkins: java -jar jenkins.war --httpPort=8888 httpPort指的就是Jenkins所使用的http端口,这里指 ...

  4. 2018年12月7日 字符串格式化2 format与函数1

    tp7="i am \033[44;1m %(name)-25.6s\033[0m"%{"name":"sxj2343333"} print ...

  5. Eclipse查看Servlet源码

    Eclipse查看Servlet源码 @(Java) 1.servlet-api 和 javax.servlet-api的区别 在正式查看Servlet源码前,我们首先要分清楚上述两个jar包的区别. ...

  6. 【lg1799】数列

    题目描述 虽然msh长大了,但她还是很喜欢找点游戏自娱自乐.有一天,她在纸上写了一串数字:1,l,2,5,4.接着她擦掉了一个l,结果发现剩下l,2,4都在自己所在的位置上,即1在第1位,2在第2位, ...

  7. 89. a^b【快速幂模板】

    a^b Description 求 aa 的 bb 次方对 pp 取模的值. 输入格式 三个整数 a,b,pa,b,p ,在同一行用空格隔开. 输出格式 输出一个整数,表示a^b mod p的值. 数 ...

  8. 【系列教程1】Gradle入门系列三:依赖管理

    在现实生活中,要创造一个没有任何外部依赖的应用程序并非不可能,但也是极具挑战的.这也是为什么依赖管理对于每个软件项目都是至关重要的一部分. 这篇教程主要讲述如何使用Gradle管理我们项目的依赖,我们 ...

  9. P4091 [HEOI2016/TJOI2016]求和

    留待警戒 FFT的时候长度要写的和函数里一样啊XD 瞎扯 这是个第二类斯特林数的理性愉悦颓柿子题目 颓柿子真的是让我hi到不行啦(才没有) 前置芝士 一个公式 \[ \sum_{i=0}^n t^i ...

  10. printf和cout的区别详述

    https://blog.csdn.net/ysayk/article/details/50959909