java.util.Math类是数学相关的工具类,里面提供了大量的静态方法,完成了数学运算相关的操作。
**
四种常见方法:
**
1.public static double abs(double num) :获取绝对值,有多种重载
2.public static double ceil(double num) :向上取整
3.public static double floor(double num) :向下取整
4.public static double round(double num) :四舍五入
备注:圆周率:Math.PI
代码示例:
import javax.swing.plaf.synth.SynthOptionPaneUI;
import java.awt.*;
public class DemoMath {
public static void main(String[] args) {
//获取绝对值
System.out.println(Math.abs(3.14));//3.14
System.out.println(Math.abs(0));//0
System.out.println(Math.abs(-2.4));//2.4
System.out.println("============================");
//向上取整
System.out.println(Math.ceil(3.19));//4
System.out.println(Math.ceil(3.9));//4
System.out.println("============================");
//向下取整
System.out.println(Math.floor(3.48));//3
System.out.println(Math.floor(3.9)); //3
System.out.println("============================");
//四舍五入
System.out.println(Math.round(20.4));//20
System.out.println(Math.round(20.9));//21
}
}
结果
一个简单的练习题:
计算在-10.8到5.9之间,绝对值大于6或者小于2.1的整数有多少个?
分析:
1.既然已经确定了范围,for循环
2.起点位置-10. 8应该转换成为-10,两种办法:
2.1)可以使用Math.ceil方法, 向上(向正方向)取整
2.2)强转成为int,自动舍弃所有小数位
3.每一个数字都是整数,所以步进表达式应该是num++,这样每次都是+1的。
4.如何拿到绝对值: Math. abs方法。
5.一旦发现了一个数字,需要让计数器++进行统计。
代码:
public class DemoMathPractice {
public static void main(String[] args) {
double max=5.9;
double min=-10.8;
int count =0;
for (int i =(int) min; i < max; i++) {
int num=Math.abs(i);
if( num <2.1 || num > 6 ) {
System.out.println(i);
count++;
}
}
System.out.println("总共有:"+count+"个");
}
}
结果: