In the study of java, one of the algorithms often has the decimal point retention that belongs to java. There are generally four ways.
Example of retaining decimals in java:
/** * 1.BigDecimal常用于金额的计算, * 超过16位使用 */ public void m1() { BigDecimal bg = new BigDecimal(f); double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); System.out.println(f1); } /** * 2.DecimalFormat转换最简便 * 用于格式化十进制数字 * 常用 */ public void m2() { DecimalFormat df = new DecimalFormat("#.00"); System.out.println(df.format(f)); } /** * 3.String.format打印最简便 * 常用 */ public void m3() { System.out.println(String.format("%.2f", f)); } /** * 4.NumberFormat * 是所有数值格式的抽象基类。 */ public void m4() { NumberFormat nf = NumberFormat.getNumberInstance(); nf.setMaximumFractionDigits(2); System.out.println(nf.format(f)); } public static void main(String[] args) { java_01 f = new java_01(); f.m1(); f.m2(); f.m3(); f.m4(); }
输出结果:自动四舍五入: 123456.79 123456.79 123456.79 123,456.79
Introduction to four methods of retaining decimals in java:
1, BigDecimal
Commonly used for calculation of amounts, if more than 16 digits are used,
The API class BigDecimal provided by Java in the java.math package is used to perform precise operations on numbers with more than 16 significant digits.
Although the double-precision floating-point variable double can handle 16-bit significant numbers. In practical applications, larger or smaller numbers need to be operated and processed. Float and double can only be used for scientific calculations or engineering calculations. In commercial calculations, java.math.BigDecimal should be used.
What BigDecimal creates is an object, but you cannot use traditional arithmetic operators such as , -, *, / to directly perform mathematical operations on its objects, but you must call its corresponding methods. The parameters in the method must also be BigDecimal objects.
2. DecimalFormat
It is a specific subclass of NumberFormat, used to format decimal numbers. It can help you format the numbers into what you need as quickly as possible.
3. String.format
The easiest way to print.
String.format As a string format, simply call String.format(“Hello %s”, “John”);
String.format returns a String type string.
4. NumberFormat
NumberFormat is the abstract base class for all numerical formats. This class provides an interface for formatting and analyzing numerical values.
Of the above four methods, 2 and 3 are commonly used.
For more java knowledge, please pay attention to java basic tutorial.
The above is the detailed content of How to retain decimals in java. For more information, please follow other related articles on the PHP Chinese website!