Trong ứng dụng của tôi, tất cả các số BigDecimal được chia tỷ lệ thành hai chữ số thập phân. Nói cách khác, mỗi khi tôi tạo một BigDecimal mới trong mã của mình, tôi cũng cần sử dụng thang phương pháp:Tạo một kiểu BigDecimal tùy chỉnh
BigDecimal x = BigDecimal.ZERO;
x.setScale(2, RoundingMode.HALF_UP);
Vì vậy, để giảm thiểu tác phẩm, tôi muốn tạo ra tùy chỉnh BigDecimal loại của tôi, một cái gì đó như:
public class CustomBigDecimal extends BigDecimal {
public CustomBigDecimal(String val) {
super(val);
this.setScale(2, RoundingMode.HALF_UP);
}
}
tôi biết this.setScale(2, RoundingMode.HALF_UP);
không thực hiện công việc, nhưng tôi không thể tìm ra cách để làm nó, là nó có thể?
Tại sao không sử dụng một loại tùy chỉnh mà các đại biểu đến BigDecimal? – keuleJ
Xin lưu ý rằng 'x.setScale' không thay đổi tỷ lệ' x', nhưng trả về một đối tượng BigDecimal mới có cùng giá trị (có thể làm tròn) và tỷ lệ 2. Bạn phải gán giá trị này cho biến để có hiệu lực. –