【问题标题】:What would be the cleaner version of the code?什么是更简洁的代码版本?
【发布时间】:2020-02-12 14:26:34
【问题描述】:

队友写了,

return ( jsonDict == nil ? nil : [jsonDict mutableCopy] );

Objective-C 中的代码更简洁的版本是什么?

【问题讨论】:

    标签: ios objective-c coding-style


    【解决方案1】:

    只需return [jsonDict mutableCopy];

    如果 jsonDict 为 nil,那么调用 mutableCopy 也会产生 nil

    【讨论】:

    • 作为参考,这是Objective-C中nil的一个属性:any method called on nil will have a 0/nil return value [“Working with nil”部分]
    • 我想知道NPE什么时候发生?仅用于访问变量? @ItaiFerber
    • @SazzadHissainKhan 如果您执行 obj->property 并且 obj 为零。或者,如果您尝试取消引用 nil 指针
    • @SazzadHissainKhan 事实上,Objective-C 没有像 Java 这样的空指针异常——nil 的无效访问都涉及到dereferencing nil(即尝试访问@ 987654331@可能代表。
    猜你喜欢
    • 2021-07-30
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 2014-06-07
    • 2021-12-07
    • 1970-01-01
    相关资源
    最近更新 更多