Tôi muốn chuyển đổi một số thành 2 chữ số thập phân (Luôn hiển thị hai chữ số thập phân) trong thời gian chạy. Tôi cố gắng một số mã nhưng nó chỉ thực hiện, như hình dưới đâyChuyển đổi số thành 2 chữ số thập phân trong Java
20.03034 >> 20.03
20.3 >> 20.3 (my code only rounds not converts)
tuy nhiên
, tôi muốn nó làm điều này:
20.03034 >> 20.03
20.3 >> 20.30 (convert it to two decimal places)
Mã của tôi dưới đây:
angle = a variable
angle_screen = a variable
DecimalFormat df = new DecimalFormat("#.##");
angle = Double.valueOf(df.format(angle));
angle_screen.setText(String.valueOf(angle) + tmp);
Bất kỳ giúp đỡ về cách để làm điều này sẽ là tuyệt vời, cảm ơn.
Mã của bạn là thiếu sót bằng cách nào đó. Bạn chuyển đổi một đôi thành một chuỗi với một định dạng đặc biệt. Sau đó, bạn chuyển đổi nó trở lại thành một đôi và sau đó bạn chuyển đổi nó trở lại thành một chuỗi mà không chỉ định bất kỳ định dạng nào. Tôi đoán đó là sai. Mục đích của biến 'tmp' cũng không rõ ràng. – Robert
Bạn nên đọc API 'DecimalFormat' - câu trả lời ở đó và nó khá rõ ràng. – Paul
có thể trùng lặp của [Làm tròn đôi thành 2 số có nghĩa sau dấu thập phân] (http://stackoverflow.com/questions/2808535/round-a-double-to-2-significant-figures-after-decimal-point) –