首页 > 其他分享 >显示类型转换和as的区别

显示类型转换和as的区别

时间:2023-11-18 16:56:13浏览次数:47  
标签:类型转换 显示 Console Dictionary 区别 Add dict ex

一、显示类型转换:

Dictionary<string,object> dict = new Dictionary<string,object>();
dict.Add("Id", "111");
dict.Add("Name", "NAMSDJFIDSJF");
dict.Add("Genger", true);

try
{
    var person = (Person)(object)dict;
}
catch (Exception ex)
{

    Console.WriteLine(ex.Message);
    
}

输出结果:

 二、as转换:

Dictionary<string,object> dict = new Dictionary<string,object>();
dict.Add("Id", "111");
dict.Add("Name", "NAMSDJFIDSJF");
dict.Add("Genger", true);

try
{
    var person = (object)dict as Person;
    Console.WriteLine(person);
}
catch (Exception ex)
{

    Console.WriteLine(ex.Message);

}

输出结果:

 三、结论

  • 显示类型转换失败是直接抛出异常;
  • as转换转换失败是返回null.

 

标签:类型转换,显示,Console,Dictionary,区别,Add,dict,ex
From: https://www.cnblogs.com/lixiang1998/p/17840722.html

相关文章

  • 关于jquery显示部分li元素的方法
    <!--如果大于等于3只显示到这里剩下的4和5不显示-->$('.oneulli:gt(3)').hide();$('.oneulli:last').show();<!--点这个显示4和5-->$('.oneulli:last').click(function(){$('.oneulli:gt(3)').show();}); <divclass="o......
  • vs2022安装dev控件工具箱不显示
    我的vs版本是2022的,然后第一次安装dev控件我下的是20.2版本的。安装完了之后工具箱中一直没有显示dev相关控件。然后我尝试过修复,还是没有达到目的。试过网上的办法“ToolboxCreator.exe/ini:toolboxcreator.ini”,还是没用。我以为版本太新了,然后我网上找了个15.2的安装。安装完......
  • python 赋值、浅拷贝、深拷贝的区别
    b=a: 赋值引用,a和b都指向同一个对象。b=a.copy(): 浅拷贝,a和b是一个独立的对象,但他们的子对象还是指向统一对象(是引用)。b=copy.deepcopy(a): 深度拷贝,a和b完全拷贝了父对象及其子对象,两者是完全独立的。对于可变的序列,切片操作符:是浅拷贝 比如:a=b[:]......
  • python:第二十章:数据类型转换之bool
    一,如何得到对象的布尔值?Python中,所有的数据都是对象,如整数、浮点数、字符串、列表、字典等。每个对象都有一个布尔值,用于表示对象的真假内置函数bool()能用来获取对象的布尔值。它把对象转换为布尔值,返回True或False,表示对象为真或假看例子:非0数字的布尔值为True,0的布尔值......
  • Python:Pandas中df.iloc和df.loc区别
    1df.iloc官方文档中定义为“基于整数位置的索引,用于按位置选择。”df.iloc就是只根据行列号对数据进行切片或选择。当作数组取数就行。df.iloc[raw,col]:第一个参数raw表示行选,第二个参数表示列选,都必须是整数。importpandasaspdmydict=[{'a':1,'b':2,'d':4},......
  • beego:将服务器上的图片显示到客户端浏览器
    来源:http://www.shanhubei.com/archives/2840.html将服务器上的图片显示到客户端浏览器//@Title//@Description显示图片//@Paramnumquerystringtrue比如:图片名字20181120164548_75_jd.jpg//@Success200//@router/ShowImage[get]func(u......
  • https和http的区别和优势
    大家好,我是咕噜-凯撒,HTTP(超文本传输协议)和HTTPS(安全超文本传输协议)是用于在网络上传输数据的协议,HTTPS相比HTTP在数据传输过程中更加安全可靠,适合对数据安全性要求较高的场景,如网上银行、电子商务等。所以在涉及到用户隐私信息和支付信息的网站中,都会采用HTTPS协议来保护数据安全。......
  • idea中out目录、target目录和build目录的区别?
    在IntelliJIDEA中,out目录和target目录是两个不同的目录,它们用于存放编译和构建输出的文件。它们的区别如下:out目录:out目录是IntelliJIDEA的默认输出目录。它用于存放项目的编译输出文件,包括编译后的类文件和其他资源文件。在大多数情况下,out目录是用于开发和调试期......
  • axios、ajax、fetch三者的区别
    1.ajax:是指一种创建交互式网页应用的网页开发技术,并且可以做到无需重新加载整个网页的情况下,能够更新部分网页,也叫作局部更新优缺点:1)局部更新2)原生支持,不需要任何插件3)原生支持,不需要任何插件4)可能破坏浏览器后退功能5)嵌套回调,难以处理2.axios:是一个基于promise的HTTP......
  • Source Insight空格显示异常
    摘自:https://blog.csdn.net/ljz0929/article/details/108300470 有时候在使用sourceinsight的会发现两个变量命名有多个空格,但是显示的只有一个空格,还有可能连在了一起的情况。这时我们只需要设置一下,关闭FixedWhitespace功能即可。 ......