我在这里寻找建议。我正在努力在不存在返回值或无法确定返回值的情况下从方法返回NULL还是返回空值更好。
以以下两种方法为例:
string ReverseString(string stringToReverse) // takes a string and reverses it.
Person FindPerson(int personID) // finds a Person with a matching personID.
在中ReverseString()
,我会说返回一个空字符串,因为返回类型是字符串,因此调用者期望得到。同样,通过这种方式,调用方将不必检查是否返回了NULL。
在中FindPerson()
,返回NULL似乎更合适。无论是否new Person()
返回NULL或空的Person Object(),调用者都必须在对其进行任何操作(如调用UpdateName()
)之前检查一下Person对象是否为NULL或为空。因此,为什么不只在此处返回NULL,然后调用方只需检查NULL。
还有其他人为此感到挣扎吗?任何帮助或见解表示赞赏。