大数相加,相减,相除,相乘。。。java BigInteger BigDecimal

实习机试时有大数相加,前几天校招有大数相减的题。这种题c,c++可能会比较复杂,在java里却比较简单,因为已经有写好的类和方法供调用了。


在JAVA中有两个类BigInteger和BigDecimal分别表示大整数类和大浮点数类,至于两个类的对象能表示最大范围不清楚,理论上能够表示无线大的数,只要计算机内存足够大。


这两个类都在java.math.*;包中,那当然就要import啦


===================

构造函数:

 一般用到以下两种: 
BigInteger(String val); 
将指定字符串转换为十进制表示形式; 
   BigInteger(String val,int radix); 
将指定基数的 BigInteger 的字符串表示形式转换为 BigInteger 



这一点是必须的,要转化成BigInteger 类型的。

BigInteger   a = new BigInteger("1111111111111111111");

BigInteger  b = new BigInteger("22222222222222222222");


相加 add();

a.add(b);这样才可以


相减  subtract();


相乘  multiply();


相除  divide();


求余  remainder();


当然,,这个BigInteger类中还有好多的方法,取反啊,与,或,等等。。

===============================

至于怎么不用jdk中的函数去实现,这里先不在详说,,有兴趣可以再看看吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值