最近编码遇到了一个疑惑,业务代码包括同事的经常发生空指针报错(正常有值的时候不会,但是开发环境数据混乱,测试的时候就经常发生了)。
那么是不是每个方法都需要对其入参进行判null呢?
比如下面的每个方法都需要对入参进行判null:
private void xxx(Map<String, Object> map) {
if(map != null) {
Object value = map.get("key");
}
}
private void xxx(List<String> list) {
if(list != null && list.size() > 0) {
list.get(0);
}
}
private void xxx(String str) {
if(str != null) {
str.indexOf(".");
}
}
因为方法是无法保证入参绝对不是null的,但是这样做就会导致到处都是判null的代码,很丑陋。
请问各位是如何应对的