Tôi muốn thay đổi độ chính xác của biểu diễn kép trong chuỗi Tôi đang định dạng dựa trên đầu vào của người dùng. Ngay bây giờ tôi đang cố gắng một cái gì đó như:Làm thế nào để Java String.format với độ chính xác biến?
String foo = String.format("%.*f\n", precision, my_double);
Tuy nhiên tôi nhận được một java.util.UnknownFormatConversionException
. Cảm hứng của tôi cho phương pháp này là C printf và this resource (phần 1.3.1).
Tôi có lỗi cú pháp đơn giản ở đâu đó, Java có hỗ trợ trường hợp này hay không hoặc có cách tiếp cận tốt hơn không?
Edit:
Tôi cho rằng tôi có thể làm điều gì đó như:
String foo = String.format("%." + precision + "f\n", my_double);
nhưng tôi vẫn muốn được quan tâm trong nước hỗ trợ cho một hoạt động như vậy.
Vì vậy, bạn đề nghị OP cái gì đó ông đã biết và thêm vào trong câu hỏi của anh? – Tom
Tôi chủ yếu đề xuất OP để làm cho chức năng tĩnh của riêng mình mà sẽ làm những gì ông muốn (một chức năng bản địa của định dạng chuỗi trong đó bao gồm độ chính xác biến). Vì vậy, có và không, bởi vì anh ta đã có các công cụ để làm điều đó. Hoặc ít nhất đó là những gì tôi đang cố gắng làm. – Gerdi