Có thư viện BigDecimal với các phép toán cơ bản của BigDecimal cho phép giá trị null không?thư viện toán học java cho BigDecimal cho phép giá trị null
Null phải được coi là 0 cho mục đích toán học.
Tôi không muốn thực hiện tất cả các kiểm tra rỗng cho các giá trị null có thể có.
Bạn không bao giờ cho phép giá trị null trong cơ sở dữ liệu, ứng dụng hoặc chế độ xem và khởi tạo mọi thứ với new BigDecimal(0)
hoặc thực hiện kiểm tra null trên mọi mức sử dụng cho giá trị nullable.
Cái gì như:
public static BigDecimal add(final BigDecimal value, final BigDecimal augend)
{
if (value == null)
return augend;
else if (augend == null)
return value;
else
return value.add(augend);
}
public static BigDecimal multiply(final BigDecimal value, final BigDecimal multiplicand)
{
if (value == null || multiplicand == null)
return null;
return value.multiply(multiplicand);
}
+1 cho 'BigDecimal.Zero'. Chưa bao giờ kiểm tra điều đó. – djmj
Với câu trả lời cho trước, tôi quyết định không cho phép giá trị null cho số thập phân của tôi trong cơ sở dữ liệu. Tôi đã suy nghĩ cách lâu dài để cho phép hay không, và theo dõi trạng thái vô giá trị chỉ là lãng phí thời gian mã hóa. – djmj
Chi phí nhỏ để tạo ra một hàm so sánh dấu phẩy động cho các mục đích gui là một giao dịch công bằng. – djmj