Trong java, làm cách nào để chuyển đổi chuỗi phần trăm thành BigDecimal?làm thế nào để chuyển đổi tỷ lệ phần trăm chuỗi thành BigDecimal?
Cảm ơn
String percentage = "10%";
BigDecimal d ; // I want to get 0.1
Trong java, làm cách nào để chuyển đổi chuỗi phần trăm thành BigDecimal?làm thế nào để chuyển đổi tỷ lệ phần trăm chuỗi thành BigDecimal?
Cảm ơn
String percentage = "10%";
BigDecimal d ; // I want to get 0.1
BigDecimal d = new BigDecimal(percentage.trim().replace("%", "")).divide(BigDecimal.valueOf(100));
Chừng nào bạn biết rằng biểu tượng %
sẽ luôn luôn được ở phần cuối của String
của bạn:
BigDecimal d = new BigDecimal(percentage.substring(0, percentage.length()-1));
d.divide(100); // '%' means 'per hundred', so divide by 100
Nếu bạn không biết rằng biểu tượng %
sẽ ở đó:
percentage = percentage.replaceAll("%", ""); // Check for the '%' symbol and delete it.
BigDecimal d = new BigDecimal(percentage.substring(0, percentage.length()-1));
d.divide(new BigDecimal(100));
Không có 'divide (int) 'trong' lớp BigDecimal'. –
@ Eng.Fouad bạn là chính xác, sai lầm của tôi. Đang chỉnh sửa ngay bây giờ ... – Jon
Hãy thử new DecimalFormat("0.0#%").parse(percentage)
Tại đây, Namal cung cấp câu trả lời theo một phương pháp, thay vì chia một lần nữa. Tốt. –
Chỉ cần nhớ rằng điều này sẽ không làm việc với một cái gì đó như "10,5%". –
@RasmusFaber nó sẽ – maksimov
có vẻ như câu hỏi trùng lặp: http://stackoverflow.com/questions/2109860/compute-percentage-for-bigdecimals –