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 购物车和三级菜单
    python-装饰器
    day3 python 函数
    day3 python 集合 文件
    two day python基础知识
    python-day 1
    Cordova 环境搭建
    javascript在html直接传值
    JavaScript疑难点
    Javascript创建对象的方法
  • 原文地址:https://www.cnblogs.com/peach/p/1341749.html
Copyright © 2011-2022 走看看