本文转载自微信公众号「后端Q」,作者conan 。转载本文请联系后端Q公众号。
类型转换从根本上说是类型铸造,或者说是把数据从一种类型转换为另一种类型。在 C# 中,类型铸造有两种形式:
隐式类型转换 - 这些转换是 C# 默认的以安全方式进行的转换, 不会导致数据丢失。例如,从小的整数类型转换为大的整数类型,从派生类转换为基类。
显式类型转换 - 显式类型转换,即强制类型转换。显式转换需要强制转换运算符,而且强制转换会造成数据丢失。
下面的实例显示了一个显式的类型转换:
- static void Main(string[] args)
- {
- double d = 5673.74;
- int i;
- // 强制转换 double 为 int
- i = (int)d;
- Console.WriteLine(i);
- Console.ReadKey();
- }
当上面的代码被编译和执行时,它会产生下列结果:
- 5673
下面的实例把不同值的类型转换为字符串类型:
- 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#中,我们可以看到三种强制类型转换,比如强制转换成有符号32位整型,可以找到下面三种方式:
①(int)()
②Convert.ToInt32()
③int.Parse()
as 转换符
as 操作符的工作方式与强制类型转换一样 ,只是它永远不会抛出一个异常,如果对象不能转换,结果就是null,强制转换则会抛出异常。
用大数据赋能业务这个话题已经成为各个行业的老生常谈,大数据已渗透到当今社会...
数据融合需要标准规范先行,实现数据可见性、数据易理解性、数据可链接性、数据...
同一房型价格不同,同一路线打车却比其他人高出不少,同一家店的外卖吃得总比别...
【51CTO.com快译】如今,人们生活和工作在越来越以数据为中心的业务环境中,而数...
虚拟主机 ip是共用的吗?一般来说,虚拟主机是资源共享,IP也是共用的。不过,除...
4月15日,2021 GIDC全球互联网数据大会在深圳隆重召开。在本次大会同步的“金Dat...
我们知道,有了合适的技术,我们可以做得比仅仅跟上更新要好得多,并且如果我们...
近期,快手可谓动作不断。 先是宣布和京东合作618购物节,再是邀请周杰伦入驻,...
直播主题 Tair(Redis)行业场景深度刨析-轻松构建全球多活的Session系统 直播时间...
在微服务环境中,服务网格为开发和运营提供了好处。 很多开发者不知道为什么要关...