相当于 Guava 的前提条件.checkNotNull(...) for Objective-C?



在Java中,我喜欢使用Guava的Preconditions类来启动方法,以确保方法参数不是null或有效值。例如:

public void myMethod(String str) {
    Preconditions.checkNotNull(str);
    ... method logic here ...
}

这是我编码方法的重要组成部分。Objective-C中有类似的东西吗?

等效的是在NSException.h中定义的NSParameterAssert。不过,它不如Guava的功能齐全。

assert()有什么问题?即断言(str!=nil);

Objective-C是C的超集,因此您可能会发现以下解决方案符合您的需求:C.中的契约设计。另一个使用Objective-C的解决方案在这里描述:Objective-C 中的几个契约设计宏