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

教程分享 > Java教程 > 博文分享 (11518) 2024-03-18 14:22:02

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

Java编程代码如下:

package com.leftso.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编程之Spring Cloud Hystrix Circuit熔断/断路
Java编程软件有哪些?常用Java编程软件下载、安装和使用说明
Java编程之spring boot FastDFS Java client使用,Java编程,FastDFS Java客户端
Java编程中Spring Boot整合RabbitMQ实现消息中间件RabbitMQ的使用
Java编程之java static关键字,Java编程,static关键字
Java编程之Spring Boot通过JMSTemplate 整合ActiveMQ
java编程之java jwt token使用,autho0的Java-jwt框架使用,java编程,java-jwt
java编程为啥会出现spring框架,为什么要有Spring?
java编程之maven打包Java source jar包
Java编程中spring boot项目如何获取spring容器applicationContext
spring security常用注解@Secured、@PreAuthorize 、@PostAuthorize说明,Java编程,spring security
Java web 编程规范 之 controller规范
Java编程中纯jdk java方式编写webservice服务(server)和客服端(client)
本文讲解什么是JWT,JWT的构成和JWT算法?,Java编程,JWT