详解c# 类型转换

 更新时间:2020年07月18日 14:40:54   作者:菜鸟教程  
这篇文章主要介绍了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# 提供了下列内置的类型转换方法:

序号 方法 & 描述
1 ToBoolean
如果可能的话,把类型转换为布尔型。
2 ToByte
把类型转换为字节类型。
3 ToChar
如果可能的话,把类型转换为单个 Unicode 字符类型。
4 ToDateTime
把类型(整数或字符串类型)转换为 日期-时间 结构。
5 ToDecimal
把浮点型或整数类型转换为十进制类型。
6 ToDouble
把类型转换为双精度浮点型。
7 ToInt16
把类型转换为 16 位整数类型。
8 ToInt32
把类型转换为 32 位整数类型。
9 ToInt64
把类型转换为 64 位整数类型。
10 ToSbyte
把类型转换为有符号字节类型。
11 ToSingle
把类型转换为小浮点数类型。
12 ToString
把类型转换为字符串类型。
13 ToType
把类型转换为指定类型。
14 ToUInt16
把类型转换为 16 位无符号整数类型。
15 ToUInt32
把类型转换为 32 位无符号整数类型。
16 ToUInt64
把类型转换为 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

以上就是详解c# 类型转换的详细内容,更多关于c# 类型转换的资料请关注脚本之家其它相关文章!

相关文章

  • C#实现利用Windows API读写INI文件的方法

    C#实现利用Windows API读写INI文件的方法

    这篇文章主要介绍了C#实现利用Windows API读写INI文件的方法,涉及C#针对ini文件的创建、读取及写入等操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • 详解C#中Helper类的使用

    详解C#中Helper类的使用

    项目中用户频繁访问数据库会导致程序的卡顿,甚至堵塞。使用缓存可以有效的降低用户访问数据库的频次,有效的减少并发的压力。而helper类对缓存有了封装,本文展示了封装的示例代码,需要的可以参考一下
    2022-04-04
  • 一道关于C#参数传递的面试题分析

    一道关于C#参数传递的面试题分析

    这篇文章主要介绍了一道关于C#参数传递的面试题,实例分析了C#参数传递的相关使用技巧,需要的朋友可以参考下
    2015-05-05
  • C#浏览器提示跨域问题解决方案

    C#浏览器提示跨域问题解决方案

    这篇文章主要介绍了C#浏览器提示跨域问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • WPF中图像处理的方法介绍

    WPF中图像处理的方法介绍

    这篇文章介绍了WPF中图像处理的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • C#计算2个字符串的相似度

    C#计算2个字符串的相似度

    这篇文章主要为大家详细介绍了C#计算2个字符串相似度的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • C#实现一个简单实用的TXT文本操作及日志框架详解

    C#实现一个简单实用的TXT文本操作及日志框架详解

    这篇文章主要给大家介绍了关于利用C#如何实现一个简单实用的TXT文本操作及日志框架的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们一起来看看吧
    2018-07-07
  • C# Winform实现进度条显示

    C# Winform实现进度条显示

    这篇文章主要为大家详细介绍了C# Winform实现进度条显示,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • C#启动windows服务方法的相关问题分析

    C#启动windows服务方法的相关问题分析

    C#启动windows服务的方法都是什么呢?C#启动服务类型为Disabled的windows服务会遇到什么样的问题呢?那么本文就向你介绍C#启动windows服务的方法的相关内容
    2012-12-12
  • 一个可逆加密的类(使用3DES加密)

    一个可逆加密的类(使用3DES加密)

    表示三重数据加密标准算法的基类,TripleDES 的所有实现都必须从此基类派生。是从 SymmetricAlgorithm 类里继承出来。
    2011-07-07

最新评论