我认为应该在调用函数内部进行判断。这样,如果你从5个不同的位置调用该函数,你只需要在一个地方检查null,而不是在5个地方都检查。 但这并不是一定的答案。它真正取决于函数本身以及使用null参数调用函数会产生什么后果。
如果在函数中接收到null是一个有效的可能性,请在函数内部检查null。同时保持DRY,避免在调用者中多次检查null(所以我支持ryeguy的答案)。如果接收到null表示错误,请使用异常失败(并尽早失败),或者让类似于NullPointerException的异常自然发生。如果出现异常,请尝试找出原因,并且:(i)消除问题的原因;或者(ii)正确处理异常。