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

编程教程 > Java (8779) 2025-01-27 08:44:07

java编程中float或double类型保留2位/n位小数使用BigDecimal进行处理

Java编程代码如下:

package com.xqlee.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();
	}
}

运行实例


评论
User Image
提示:请评论与当前内容相关的回复,广告、推广或无关内容将被删除。

相关文章
java编程中float或double类型保留2位/n位小数使用BigDecimal进行处理
java基础编程中float/double类型的正确比较方法
Java编程float转换为String并保留n位小数
Java编程软件有哪些?常用Java编程软件下载、安装和使用说明
Java编程之spring boot FastDFS Java client使用,Java编程,FastDFS Java客户端
java编程之java jwt token使用,autho0的Java-jwt框架使用,java编程,java-jwt
modbus tcp 通讯协议在Java编程中的使用。本文主要讲解Java编程中通过modbus4j工具类来实现modbus tcp通讯协议的通讯。包括通过modbus协议读取数据,写入数据的实现。
Java编程中Spring Boot整合RabbitMQ实现消息中间件RabbitMQ的使用 1 主要用spring-boot-starter-amqp来整合R
Java编程之java static关键字,Java编程,static关键字
Java编程之Spring Cloud Hystrix Circuit熔断/断路
Java编程中纯jdk java方式编写webservice服务(server)和客服端(client)
Map与Java bean之间的转换工具类,用于java.util.Map与普通javabean直接的相互转换,Java编程
Java编程之Spring Boot通过JMSTemplate 整合ActiveMQ
Java编程中spring boot项目如何获取spring容器applicationContext