zoukankan      html  css  js  c++  java
  • C#之类型转换

    一、通过as实现类型转换

    Person p1 = new Person();
    
    //转换方式一
    Student s1 = (Student)p1;
    
    //转换方式二
    Student s2 = p1 as Student;

    以上两种转换方式,第二种方式会更好。

    原因:

    方式一:通过这种方式进行类型转换时,如果转换失败则直接报异常

    方式二:通过as的方式进行类型转换,即使转换失败也不会报异常,而是返回一个null

    二、类型转换

    Cast类型转换:是内存级别上的转换,内存中的数据没有变化,只是观看的角度不同。

    1.隐式转换

      (1)把子类类型赋值给父类类型的时候会发生隐式转换(里氏替换原则)如:Person p = new Student();

      (2)把占用字节数小的数据类型赋值给占用字节数大的数据类型可以发生隐式转换(前提是它们是同一种数据类型【存在交集】)如:int n=10; double m = n;

    2.显示转换:隐式类型的反过程。

    Convert:不同类型之间的转换

      Convert.ToString(); 将任何数据类型转换为字符串

      int.parse() 将其他类型转换为int类型

    总结:as用于引用类型转化比较好,效率高。在开发过程中,尽量使用as转换数据类型

  • 相关阅读:
    springMVC+spring+mybatis整合(包括文件上传和下载)
    mybatis spring 框架整合
    Java AOP 注解配置与xml配置
    Java 实现分页功能
    Arcanist安装使用流程
    Swift 添加KVO
    swift 混编OC instanceType 标识的方法找不到
    Swift UIStackView代码使用
    Swift
    swift 相册PHAssetCollection,PHAsset
  • 原文地址:https://www.cnblogs.com/fengjiqiang123/p/11928058.html
Copyright © 2011-2022 走看看