C# 数据类型转换
短信预约 -IT技能 免费直播动态提醒
前言
在使用
Console.Read()
或Console.ReadLine()
进行输入时,和Python
语言的input()
类似两者都是把键盘键入的内容作为
string
类型返回,所以有些数据需要经过数据类型的转换才能进行计算。
相关介绍
C# System.Convert 类
微软官方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
数据在初始化时需要在数据的末尾添加后缀m或M,否则会被编译器认为创建的是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();
}
}
}
总结
本篇文章就到这里了,希望能给您带来帮助,也希望您能够多多关注编程网的更多内容!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341