首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用“空”对象替代引用是否为空判断

    这些函数中会出现很多是否为空的判断,严重影响代码的美观程度、可读性,甚至还增加了出BUG的几率。...但是一些年纪较大的语言, 比如说Java,只能通过一些代码编写技巧来尽量弱化空引用带来的问题。「使用Null对象代替是否为空判断」是一种流行的解决此问题的技巧。...其实两个方法的if条件都没有被满足,然而它们一个返回长度为0的空字符串,一个返回null, 空字符串虽然没有实际意义,但却并非是空引用, 因此在其上执行操作不会抛出空引用异常,代码也是相对安全的。...Site 类的GetCustomer方法内部进行了_customer 成员是否为空的判断,这其实就是把原来在外面的空引用判断提取到了类的内部,把逻辑给封装了起来。...然而,引入这个机制还需要跟代码的实际情况结合,假如某个对象为空的情况只出现有限的几次,那引入这种机制显得有些杀鸡用牛刀的味道了,使用是否为空判断反而更加轻松;当某个对象是否为空的判断频繁的出现在代码之中

    10.1K80

    如何判断环境变量为空

    -z 很容易理解,在 Shell 脚本里就是表示后面这个变量是否为空,也做 zero 的意思。那后面的 +x 呢?...2 Example 以下例子是先定义了 VARIABLE 变量为空,然后判断为空的时候输出需要设置环境变量,不为空则打印变量值。 VARIABLE= if !...运行后发现,结果有点诡异,明明变量是空的,为什么会报告说变量定义了呢? ➜ /tmp cat x.sh VARIABLE= if !...我大概解释一下,${VARIABLE+x} 这种称为 parameter expansion,这个变量的含义是,如果 VARIABLE 是 unset 或者空的,则会用 x 来替换这个值,最后再用刚刚的例子测试一下.../x.sh x was defined 可以看到VARIABLE为空值null,所以会用x来替换${VARIABLE的值,也就是说此时${VARIABLE}=x,所以最终会输出x的值。

    2.2K20

    空·境——腾讯微云为空页设计

    本文将简要阐述关于“腾讯微云”6.1版本所更新的为空页(内容为空)设计背后的故事,以及探索创新思维的过程与价值。 ? ?...Experience 体 验 —— 极 简 易 懂 为空状态并不是时刻都存在的,并没有多少用户能够看到它们。...为何内容为空?怎样获取内容? ? ? 由于腾讯微云的功能和场景都较为丰富,APP内也相对应存在着不少的空页面。...我们以“好奇心”为出发点思考,提炼出设计关键词——“耐人寻味”。也把为空页的设计目标定位“为空彩蛋页”。希望用户在无趣中能够找到一些小惊喜,会心一笑。 ?...根据腾讯微云“智能融入情感”的品牌宗旨,在设计脑爆环节中我们不断联想生活中的事物与各为空页出现场景的共性之处,并把它们都收集了起来(以下均为为空状态表示)。

    2.2K20
    领券