zoukankan      html  css  js  c++  java
  • C#中的空对象使用

        注:以String 类型为例

    1. 不允许使用未赋值的变量;

      //未赋值情况

      string str1;

      string str2 = "%";

      str2 = str1 + str2;    //错误,使用了为赋值的局部变量str1,编译无法通过。

      Console.WriteLine(str2);

      结果:(编译时报错)

    2. 空对象(null)可以被使用,但不能被"."(点操作);

      //使用空对象,但不"."点操作

      string str1 = null;    //赋值为null

      string str2 = "%";

      str2 = str1 + str2;    //没有问题

      Console.WriteLine(str2);

      结果:%

       //空对象"."操作

       string str1 = null;

       string str2 = "%";

       str2 = str1.ToString() + str2;    //抛出异常,null对象被点操作了

       Console.WriteLine(str2);

       结果:(运行时抛异常)

     

     

    1. 字符串的""不是null,只是值的长度为0(0个字符), 在内存中分配了空间。

      //赋值为""情况

      string str1 = string.Empty;    //赋值为""

      string str2 = "%";

      str2 = str1 + str2;            //没有问题

      Console.WriteLine(str2);

      结果:%

     

      //赋值为""情况

      string str1 = string.Empty;    //赋值为""

      string str2 = "%";

      str2 = str1.ToString() + str2;    //没问题

      Console.WriteLine(str2);

     

  • 相关阅读:
    python习题一
    华为区块链平台
    百度超级链 [Xuperchain]
    $$$Fabric v1.0 block结构与修改
    搭建 Hyperladger Fabric 基本流程
    python开发区块链【公有链】
    Asp.Net中WebServices的调用方式
    关于vs08生成解决方案慢的解决方法
    vs项目启动调试时,显示找不到文件问题
    新的公司
  • 原文地址:https://www.cnblogs.com/peach/p/1341749.html
Copyright © 2011-2022 走看看