在 Java 中,我喜欢使用Guava 的 Preconditions 类来启动方法,以确保方法参数不为空,或者是有效值。例如:
public void myMethod(String str) {
Preconditions.checkNotNull(str);
... method logic here ...
}
这是我编码方法的重要组成部分。Objective-C中有类似的东西吗?
在 Java 中,我喜欢使用Guava 的 Preconditions 类来启动方法,以确保方法参数不为空,或者是有效值。例如:
public void myMethod(String str) {
Preconditions.checkNotNull(str);
... method logic here ...
}
这是我编码方法的重要组成部分。Objective-C中有类似的东西吗?
断言()有什么问题?即断言(str!=nil);
Objective-C 是 C 的超集,因此您可能会发现以下解决方案适合您的需求: C 中的契约式设计。此处描述了另一种使用 Objective-C 的解决方案:Objective-C 中用于按合同设计的一些宏
等效的是 NSParameterAssert,在 NSException.h 中定义。不过,它不像 Guava 那样功能齐全。