bigdecimal

Java BigDecimal 加减乘除运算

谁都会走 提交于 2020-02-22 15:04:10
加法:add 减法:subtract 乘法:multiply 除法:divide BigDecimal bignum1 = new BigDecimal("10"); BigDecimal bignum2 = new BigDecimal("5"); BigDecimal bignum3 = null; //加法 bignum3 = bignum1.add(bignum2); System.out.println("和 是:" + bignum3); //减法 bignum3 = bignum1.subtract(bignum2); System.out.println("差 是:" + bignum3); //乘法 bignum3 = bignum1.multiply(bignum2); System.out.println("积 是:" + bignum3); //除法 bignum3 = bignum1.divide(bignum2); 来源: https://www.cnblogs.com/jifeng/p/6046751.html

BigDecimal源码

a 夏天 提交于 2020-02-22 14:56:55
import java.math.BigDecimal; /** * 由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供精 * 确的浮点数运算,包括加减乘除和四舍五入。 */ public class Arith{ //默认除法运算精度 private static final int DEF_DIV_SCALE = 10; //这个类不能实例化 private Arith(){ } /** * 提供精确的加法运算。 * @param v1 被加数 * @param v2 加数 * @return 两个参数的和 */ public static double add(double v1,double v2){ BigDecimal b1 = new BigDecimal(Double.toString(v1)); BigDecimal b2 = new BigDecimal(Double.toString(v2)); return b1.add(b2).doubleValue(); } /** * 提供精确的减法运算。 * @param v1 被减数 * @param v2 减数 * @return 两个参数的差 */ public static double sub(double v1,double v2){ BigDecimal b1 = new

java8 array、list操作 汇【5】)- Java8 Lambda list统计(求和、最大、最小、平均)

ⅰ亾dé卋堺 提交于 2020-02-22 08:23:14
关于stream使用的好文推荐: 这里去看了ibm的一篇关于stream的文章,get到了不少stream还没遇到过的用法。老铁们可以去学习一下。[https://www.ibm.com/developerworks/cn/java/j-lo-java8streamapi/ ] lambda优雅取出对象list中某个属性重复的集合数据 public class Test { // https://blog.csdn.net/qq_35902833/article/details/88351470 @Data @AllArgsConstructor static class Dog { String name; int age; } public static List<Dog> dogs = null; static { dogs = new ArrayList<Dog>() { { add(new Dog("黄一", 11)); add(new Dog("黄一", 22)); add(new Dog("黄三", 33)); } }; } // @SuppressWarnings("AlibabaAvoidManuallyCreateThread") public static void main(String[] args) { // dogs.stream() //

BigDecimal加减乘除运算

北战南征 提交于 2020-02-22 00:43:03
java.math.BigDecimal。BigDecimal一共有4个够造方法,让我先来看看其中的两种用法: 第一种:BigDecimal(double val) Translates a double into a BigDecimal. 第二种:BigDecimal(String val) Translates the String repre sentation of a BigDecimal into a BigDecimal. 使用BigDecimal要用String来够造,要做一个加法运算,需要先将两个浮点数转为String,然后够造成BigDecimal,在其中一个上调用add方法,传入另一个作为参数,然后把运算的结果(BigDecimal)再转换为浮点数。 public static double add(double v1,double v2) public static double sub(double v1,double v2) public static double mul(double v1,double v2) public static double div(double v1,double v2) public static double div(double v1,double v2,int scale) public static

Which PostgreSQL column type should be used to store a Java BigDecimal?

好久不见. 提交于 2020-02-21 07:32:30
问题 What PostgreSQL column type should I use to store a Java BigDecimal? 回答1: See PostgreSQL datatypes - perhaps Numeric, which can act as an arbitrary precision type (this is a PostgreSQL extension). ...without any precision or scale creates a column in which numeric values of any precision and scale can be stored, up to the implementation limit on precision. I am not entirely sure what "implementation limit on precision is", though. Have never tried really large numbers. If the limit is reached

JAVA中如果用BigDecimal做除法

倾然丶 夕夏残阳落幕 提交于 2020-02-20 03:05:36
原来JAVA中如果用BigDecimal做除法的时候一定要在divide方法中传递第二个参数,定义精确到小数点后几位,否则在不整除的情况下,结果是无限循环小数时,就会抛出以上异常。 解决方法: 1 foo.divide(bar, 2 , BigDecimal.ROUND_HALF_UP); 注意这个divide方法有两个重载的方法,一个是传两个参数的,一个是传三个参数的: 两个参数的方法: @param divisor value by which this {@code BigDecimal} is to be divided. 传入除数 @param roundingMode rounding mode to apply. 传入round的模式 三个参数的方法: @param divisor value by which this {@code BigDecimal} is to be divided. 传入除数 @param scale scale of the {@code BigDecimal} quotient to be returned. 传入精度 @param roundingMode rounding mode to apply. 传入round的模式 解决方法: 1 foo.divide(bar, 2 , BigDecimal.ROUND_HALF_UP);

BigDecimal加减乘除运算

浪子不回头ぞ 提交于 2020-02-20 01:45:04
BigDecimal加减乘除运算 public static double add(double v1,double v2) public static double sub(double v1,double v2) public static double mul(double v1,double v2) public static double div(double v1,double v2) public static double div(double v1,double v2,int scale) public static double round(double v,int scale) import java.math.BigDecimal; /** * 由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供精 * 确的浮点数运算,包括加减乘除和四舍五入。 */ public class Arith{ //默认除法运算精度 private static final int DEF_DIV_SCALE = 10; //这个类不能实例化 private Arith(){ } /** * 提供精确的加法运算。 * @param v1 被加数 * @param v2 加数 * @return 两个参数的和 */ public static double add

BigDecimalUtils BigDecimal加减乘除

白昼怎懂夜的黑 提交于 2020-02-20 01:36:29
public class BigDecimalUtil { private static int DEF_DIV_SCALE = 10; // 默认精确的小数位 /** * 提供精确的加法运算。 * * @param v1 被加数 * @param v2 加数 * @return 两个参数的和 */ public static double add(double v1, double v2) { BigDecimal b1 = new BigDecimal(Double.toString(v1)); BigDecimal b2 = new BigDecimal(Double.toString(v2)); return b1.add(b2).doubleValue(); } /** * 提供精确的减法运算。 * * @param v1 被减数 * @param v2 减数 * @return 两个参数的差 */ public static double sub(double v1, double v2) { BigDecimal b1 = new BigDecimal(Double.toString(v1)); BigDecimal b2 = new BigDecimal(Double.toString(v2)); return b1.subtract(b2).doubleValue

Flex BlazeDS 数据推送

落花浮王杯 提交于 2020-02-18 23:37:28
BlazeDS有数据推送功能,Flex只需要创建一个订阅者,便可以接收到服务主动推送到前台的消息 实现过程中出现可能会出现的错误: MessageBroker msgBroker = MessageBroker.getMessageBroker(null); 这个实例返回null 解决方法:不能直接运行java 中的servlet start()方法,需要通过浏览器访问 http://localhost:8080/project/TickCacheServlet?cmd=start 记得在 web.xml 配置TickCacheServlet <servlet> <servlet-name>TickCacheServlet</servlet-name> <servlet-class>com.TickCacheServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>TickCacheServlet</servlet-name> <url-pattern>/TickCacheServlet</url-pattern> </servlet-mapping> messaging-config.xml <destination id="tick-data-feed"> <properties> <server>

java8新特性之lambda表达式

僤鯓⒐⒋嵵緔 提交于 2020-02-16 21:29:09
Java 8的一个大亮点是引入Lambda表达式,使用它设计的代码会更加简洁。当开发者在编写Lambda表达式时,也会随之被编译成一个函数式接口 演示代码下载地址: https://github.com/prettyRain/java8demo.git 1.引入lambda表达式 1)用接口Runnable演示 @Test public void test6(){ //以前的匿名内部类 Runnable runnable = new Runnable() { @Override public void run() { System.out.println("lambda"); } }; runnable.run(); //现在的lambda表达式 Runnable runnable1 = () -> System.out.println("lambda"); runnable1.run(); } 2)自己写接口演示普通调用、匿名内部类调用、lambda表达式调用 Student类 用于演示的学生对象 package com.ge.lambda; import java.math.BigDecimal; /** * 学生类 */ public class Student { public static String getStr(Integer grade){ if(Integer