Như trên đã lưu ý, các đại lượng số và giá trị tiền tệ được biểu diễn theo những khuôn dạng rất khác nhau, tuỳ thuộc vào từng vùng trên thế giới. Java cung cấp một tuyến tập các lớp giúp cho việc định dạng và phân loại các giá trị số sang lớp tương ứng trong java. text. Để định dạng khuôn mẫu các con số ta có thể thực hiện các bước như sau:
- Xác định đối tượng bản địa hiện thời
- Sử dụng phương thức như getNumberlnstance (), getCurrencyInstance (), v.v. để xác định đối tượng định dạng hiện thời.
- Sử dụng đối tượng định dạng hiện thời để định dạng và phân loại theo yêu cầu.
Ví dụ, ta muốn hiển thị số tiền 123456.78 theo đơn vị tiền và qui định của người Đức.
Locale loc = new Locale(“de”, “DE”);
NumberFormat currFmt = NumberFormat.getCurrencylnstance(loc)
double val = 123456.78;
System.out.println(currFmt.format(val));
Kết quả in ra màn hình sẽ là
123.456,78 DM
Lưu ý, DM là đơn, vị tiền tệ của Đức, được viết ờ sau số tiền.
Ngược lại, nếu ta muốn đọc các đại lượng số đã được nhập vào, lưu trữ theo qui ước của một vùng nào đó thì phải sử dụng phương thức parse 0 để phân loại các đại lượng đó. Ví dụ, đọc một giá trị số nhập vào từ inputField, chuyển nó về khuôn dạng của vùng bản địa hiện thời trên máy tính.
TextField inputField;
NumberFormat fmt = NumberFormat.getNumberlnstance();
Number input = fmt.parse (inputFiled. getText () .trim() ) ;
double val = input.doubleValue0;
Nhận lại danh sách các đối tượng khu vực mà NumberFormat hỗ trợ.
- static NumberFormat getNumberlnstance()
- static NumberFormat getNumberlnstance (Locale 1)
- static Number Format getCurencylnstance ( )
- static NumberFormat getCurencylnstance (Locale 1)
- static NumberFormat getPercentlnstance ( )
- static NumberFormat getPercentlnstance (Locale 1)
Nhận lại định dạng formatter cùa đại lượng số, tiền tệ và tỷ lệ % của đối tượng bản địa hiện thời, hoặc đổi tượng 1 cho trước.
- String format (double x)
- String format (long x)
Nhận lại các số double, long theo định dạng hiện thời dưới dạng xâu.
- Number parse (string s)
Chuyển đổi xâu s sang giá trị số tương ứng, là Double nếu đầu vào là số thực, ngược là Long.
- void setMinimumlntegerDigits(int n)
- void getMinimumlntegerDigits( )
- void setMaximumlntegerDigits(int n)
- void getMaxnimumlntegerDìgỉts( )
* void setHinimumFractionDigits(int n)
- void getMinimumFractionDigits ( )
- void setMaximumFractionDigits(int n)
- void getMaximumFractionDigits()
Các phương thức trên đặt lại, đọc ra số các chữ số phần nguyên và phần thập phân của đại lượng số
25 Th3 2021
22 Th3 2021
22 Th3 2021
24 Th3 2021
22 Th3 2021
22 Th3 2021