java编程中float/double类型保留2位/n位小数

java编程中float/double类型保留2位/n位小数

Java编程代码如下:

package com.note234.common;

import java.math.BigDecimal;

public class NumberUtils {
	public static void main(String[] args) {
		float f1 = 10.236f;
		float f2 = 10.22f;

		double d1 = 0.239;
		double d2 = 10.33;

		System.out.println("float两位:" + floatScale(2, f1));
		System.out.println("float一位:" + floatScale(1, f2));
		System.out.println("double两位:" + doubleScale(2, d1));
		System.out.println("double一位:" + doubleScale(1, d2));
	}

	/**
	 * float类型保留n位小数处理
	 * 
	 * @param len
	 *            小数位数长度
	 * @param number
	 *            值
	 * @return 返回值
	 */
	public static float floatScale(int len, float number) {
		BigDecimal bigDecimal = new BigDecimal(number);
		return bigDecimal.setScale(len, BigDecimal.ROUND_HALF_UP).floatValue();
	}

	/**
	 * double类型保留n位小数处理
	 * 
	 * @param len
	 *            小数位数长度
	 * @param number
	 *            值
	 * @return 返回值
	 */
	public static double doubleScale(int len, double number) {
		BigDecimal bigDecimal = new BigDecimal(number);
		return bigDecimal.setScale(len, BigDecimal.ROUND_HALF_UP).doubleValue();
	}
}

java编程中float/double类型保留2位/n位小数

相关文章:

你感兴趣的文章:

标签云: