Câu hỏi has been answered for integers printed in decimal format, nhưng tôi đang tìm kiếm một nhã cách để làm điều tương tự với số nguyên trong dạng phi thập phân (như nhị phân, bát phân, hex).số nguyên đệm Left (định dạng phi thập phân) với số không trong Java
Tạo Strings như vậy là dễ dàng:
String intAsString = Integer.toString(12345, 8);
sẽ tạo ra một chuỗi với represenation bát phân của giá trị số nguyên 12345. Nhưng làm thế nào để định dạng nó để String có như 10 chữ số, ngoài việc tính toán số lượng số không cần thiết và lắp ráp một chuỗi mới 'bằng tay'. Một trường hợp sử dụng điển hình sẽ tạo ra các số nhị phân với số bit cố định (như 16, 32, ...) trong đó một số muốn có tất cả các chữ số bao gồm số 0 đứng đầu.
Ý của bạn cho giải pháp "thanh lịch" là chức năng thư viện. Tôi nghĩ rằng không có giải pháp thanh lịch hơn so với tính toán các số không cần thiết và trước khi ghép chúng lại. Dù sao, nếu có một thủ thuật Toán/thuật toán để làm những gì bạn muốn làm, nó sẽ khác nhau cho nhị phân và bát phân và hex ... – pakore
@pakore - vâng, bạn nói đúng, một số chức năng 'thư viện' đã có mặt trong Java API sẽ là 'thanh lịch nhất' đối với tôi;) - Tôi chỉ ghét reimplementing mã padding này một lần nữa và một lần nữa. –
Vâng, hãy xem lớp NumberFormat, tạo ra một lớp OctalFormat, HexFormat và BinaryFormat với các phương thức 0, tạo đề xuất tính năng, gửi mã của bạn, chờ một vài tháng, nâng cấp thư viện của bạn và sau đó bạn sẽ có nó như một hàm thư viện :). Hoặc bạn có thể tạo trình trợ giúp thư viện của riêng bạn cho dự án của bạn: P – pakore