处理大数字与浮点数

本文介绍了Java中处理大数字与浮点数的方法,包括int与long类型的取值范围,使用BigInteger类处理无限大的整数,以及如何正确比较浮点数。通过示例代码展示了比较浮点数的具体实现。

处理大数字与浮点数

1.

Java中int类型数值占32位,有符号

Integer.MAX_VALUE=2*e31-1,

Integer.MIN_VALUE=-2*e31,

 

long类型数值占64位

Long.MAX_VALUE=2*e63-1,

Long.MIN_VALUE=-2*e63,

2.报错:

 

计算机用固定的位数保存数值,当数值超过类型范围,计算机将自动截断数值中以二进制表示他的数的多余位数。

 

3.处理无限大的整数

BigInteger类,支持大整数的加减乘除运算

 

4.比较两个浮点数

 

计算机不能精确的表达浮点数(特殊形式除外),所以

比较两个浮点数大小应比较其差的绝对值是否在某个允许的范围额之内即可。

 

 

例子

源代码:

public class Example1 {

 

public static void main(String args[]) {

double i=0.100000000002;

double j=0.100000000003;

if(Math.abs(i-j)<1e-10) {

System.out.println(i+"="+j);

}

}

}

截图:

 

 

 

转载于:https://www.cnblogs.com/floakss/p/7659044.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值