判断一个double类型的数是不是整数
mod 1 == 0 即可,Java和js都可以使用,但也同样存在精度问题,比如:1.0000000000000001 % 1,它的结果是0。
以上写法平时写问题不大,可以用用。但是在特定领域的项目里,请参考阿里的推荐写法,定义一个足够小、符合你们项目实际需求的变量 ɛ ,这个值在java中比如设置为Double.MIN_VALUE,两数相减取绝对值小于该变量,我们就认为是相等的。
连续数列的和
间距为1的连续数列和(比如:78,79,80)
连续数列的和:(头+尾)*项数/2
比如:78+79+80+81=(81+78)*4/2
math的常用方法
Math称之为数学函数,它也是对象数据类型的,主要是用来操作数字的
1、Math.abs()求绝对值
Math.abs(-1)
2、Math.ceil/Math.floor向上取整,向下取整
向上取整,无论是正数还是负数,都取最大的值
向下取整,无论是正数还是负数,都取最小的值
Math.ceil(1.2)
2
Math.ceil(-1.6)
-1
Math.floor(1.8)
1
Math.floor(-1.1)
-2
3、Math.round()四舍五入
正数的话,还是正常的,之前理解的,但是如果是负数,临界点必须大于5
Math.round(1.5)
2
Math.round(-1.5)
-1
Math.round(-1.51)
-2
4、Math.sqrt()开平方
Math.sqrt(9)
3
5、Math.pow(n,m)取幂
n的m次幂
Math.pow(3,2) ==> 9
6、Math.PI
Math.PI ===>3.141592653589793
7、Math.max/Math.min 获取最大值和最小值
Math.max(1,2,3)
Math.min(4,5,6)
8、Math.random()获取0~1之间的随机数(大于等于0小于1)
获取n到m之间的随机数:
Math.random()*(m-n)+n;
//获取10到20之间的随机数
Math.random()*10+10
a.Math.random是取[0,1]的数;
b.取[min,max]的随机整数时使用如下公式:
Math.floor(Math.random().(max-min+1)+min)
c取[min,max]的随机整数时使用以下公式
Math.floor(Math.random().(max-min)+min)
d取[min,max]的随机整数时使用如下公式
Math.floor(Math.random().(max-min)+min+1)