30/09/2018, 18:16
Có nên luôn kiểm tra parameter của method là khác NULL?
Một method có parameter là các object, mình có nên phải luôn kiểm tra là các parameter này khác null hay ko ?
Kiểu như vầy
public doSomething(Object a, Object b){
if(a != null && b!=null){
// do some thing;
}
}
Hoặc kiểu như này
public doSomething(Object a, Object b){
if(a == null || b == null){
throw new IlegalException("a and b can not be null");
}
// do something;
}
Bài liên quan
có, với những method là public.
trong nhiều trường hợp bạn chắc chắn là nó không bao giờ null và là hàm private thì có thể không cần check.
tùy trường hợp ta mới cần kiểm tra. ví dụ nếu bạn cần lấy thông tin của 1 record dựa trên ID thì lúc này chắc chắn bạn sẽ cần phải kiểm tra việc parameter là ID có bị null hay không vì lúc này nếu id là null thì bạn sẽ không thể lấy đc những giá trị của record đó
Còn ở trường hợp nếu bạn muốn thêm một record, nhưng record này lại cho phép lưu vào một giá trị null thì lúc này bạn không cần phải kiểm tra parameter đó có null hay không.
Cho mình hỏi là tại sao id là kiểu int mà mình có thể so sánh
id==null
phải làid==0
chứ nhỉCode sai đó bạn . kiểu in là kiểu nguyên thủy không bị null, và nó có giá trị khởi tạo đầu tiên luôn
giá trị mặc định của kiểu int là 0 nhưng ở C# thì bạn có thể set giá trị cho kiểu int là null bằng cách như sau
Vì vậy việc kiểm tra 1 giá trị null ở đây là hợp lệ.