C# 数据类型转换

Posted 小狐狸FM

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 数据类型转换相关的知识,希望对你有一定的参考价值。

前言

  • 在使用Console.Read()Console.ReadLine()进行输入时,和Python语言的input()类似
  • 两者都是把键盘键入的内容作为string类型返回,所以有些数据需要经过数据类型的转换才能进行计算。

相关介绍

C# System.Convert 类

为什么在C#中没有System.DateTime的“日期”缩写?

C# 输入和输出

微软官方C#函数文档

一、函数方法

  • 下面罗列的函数方法不是全部,仅列举一些常用的
  • double这种有小写类型名的是数据类型,Double则是System中的一个类
    double会被解释器解释为Double类,有的数据类型如DateTime则没有缩写
函数方法介绍
数据.GetType()返回数据的类型
Console.ReadLine()读取一行用户输入,返回字符串
Console.WriteLine(数据)将数据打印到控制台并换行
Convert.ToBoolean(数据)将数据转换为bool类型(布尔),返回对应值
Convert.ToChar(数据)将数据转换为char类型(字符),返回对应值
Convert.ToDateTime(数据)将数据转换为DateTime类型,返回对应值
Convert.ToDecimal(数据)将数据转换为decimal类型(高精度小数),返回对应值
Convert.ToDouble(数据)将数据转换为double类型(双精度小数),返回对应值
Convert.ToSigle(数据)将数据转换为float类型(单精度小数),返回对应值
Convert.ToInt16(数据)将数据转换为16位有符号int类型(整数),返回对应值
Convert.ToInt32(数据)将数据转换为32位有符号int类型(整数),返回对应值
Convert.ToInt64(数据)将数据转换为64位有符号int类型(整数),返回对应值
Convert.ToUInt16(数据)将数据转换为16位无符号int类型(整数),返回对应值
Convert.ToUInt32(数据)将数据转换为32位无符号int类型(整数),返回对应值
Convert.ToUInt64(数据)将数据转换为64位无符号int类型(整数),返回对应值
Convert.ToString(数据)将数据转换为string类型(字符串),返回对应值

二、类型转换

[1]. 使用Convert转换

  • 转换方法:类型名 变量名 = Convert.To类型(数据)
  • Test为项目名称,Program为类名
  • decimal数据在初始化时需要在数据的末尾添加后缀mM,否则会被编译器认为创建的是double类型而报错

在这里插入图片描述

using System;

namespace Test
{

    class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();//输入
            decimal money = Convert.ToDecimal(input);//类型转换
            Console.WriteLine(money);//输出
            Console.WriteLine("{0}被转换为{1}",input.GetType(),money.GetType());
            Console.ReadKey();

        }
    }
}

[2]. 使用类型名进行转换

第二种转换方式,可使用(类型名)数据进行转换
这种方式和C中类型转换的方式是一样的

在这里插入图片描述

using System;

namespace Test
{

    class Program
    {
        static void Main(string[] args)
        {
            double data1 = 22.11;
            float data2 = (float)data1;//类型转换
            Console.WriteLine(data1);//输出
            Console.WriteLine(data2);//输出
            Console.WriteLine("{0}被转换为{1}",data1.GetType(),data2.GetType());
            Console.ReadKey();

        }
    }
}

以上是关于C# 数据类型转换的主要内容,如果未能解决你的问题,请参考以下文章

理解C#语言中的类型转换----初学者的理解,请大神指教

C#中的类型转换-自定义隐式转换和显式转换

(61)C#里怎么样转换字节数组与int类型

(61)C#里怎么样转换字节数组与int类型

如何将 System::^array 从 C# 函数转换为 C++ 中的等效数据类型

C# 类型转换