Để lưu một số thao tác nhập và làm rõ mã của tôi, có phiên bản tiêu chuẩn của phương pháp sau không?
public static boolean bothNullOrEqual(Object x, Object y) {
return ( x == null ? y == null : x.equals(y) );
}
Ai đó có thể nói nơi một điều như vậy là hữu ích?
—
anjanb 8/10/08
Nó chỉ cho phép bạn bỏ qua kiểm tra null trong phương thức equals () của bạn.
—
Michael Myers
Nếu bạn đang triển khai một Bộ sưu tập, phương thức .contains () của bạn, khi được cung cấp "o" cần phải kiểm tra "nếu bộ sưu tập này chứa ít nhất một phần tử e sao cho (o == null? E == null: o.equals (e )). " Tương tự, phương thức .remove () của bạn phải loại bỏ một phần tử như vậy.
—
newacct
Chỉ hai xu của tôi. Tôi sẽ sử dụng: public static boolean bothNullOrEqual (Object x, Object y) {return (x == y || (x! = Null && x.equals (y))); } IMHO, Nó dễ đọc hơn cho những người mới lập trình.
—
m_vitaly
Một trường hợp sử dụng khác: so sánh một giá trị để xem liệu nó có thay đổi so với giá trị trước đó hay không trong khi kiểm tra bẩn.
—
Neromancer