1,Math类概述
-
类包含用于执行基本数学运算的方法
-
Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
-
Math所有类都是静态的。可以直接类名。调用。
2,成员方法
-
public static int abs(int a) //取绝对值
-
public static double ceil(double a) //ceil 天花板 获取向上取整。结果是一个double类型
-
public static double floor(double a) //floor 地板 获取向下取整。结果是一个double类型
扫描二维码关注公众号,回复: 6524526 查看本文章 -
public static int max(int a,int b) min自学 //获取两个值中的最大值。
-
public static double pow(double a,double b) // a是底数。b是指数
-
public static double random() //0.0~1.0 之间的小数。包括0.0不包括1.0
-
public static int round(float a) 参数为double的自学 //四舍五入
-
public static double sqrt(double a) //平方根
3,Math类特点
-
由于Math类在java.lang包下,所以不需要导包。
-
因为它的成员全部是静态的,所以私有了构造方法
4,获取随机数的方法
-
public static double random():返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。
5,我要获取一个1-100之间的随机数,肿么办?
-
int number = (int)(Math.random()*100)+1;
/*
* A:案例演示
* 需求:猜数字小游戏(数据在1-100之间)
*/
import java.util.Scanner;
class Test1_GuessNum {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //创建键盘录入对象
System.out.println("请输入一个整数,范围在1-100之间");
int guessNum = (int)(Math.random() * 100) + 1; //心里想的随机数
while (true) { //因为需要猜很多次,所以用无限循环
int result = sc.nextInt(); //大家猜的数
if (result > guessNum) { //如果你们猜的数大于了我心里想的数
System.out.println("大了"); //提示大了
} else if (result < guessNum) { //如果你们猜的数小于了我心里想的数
System.out.println("小了"); //提示小了
} else { //如果既不大也不小
System.out.println("中了"); //中了
break;
}
}
}
}
6,Math 类应用
public class Demo1_Math {
/**
* @param args
* * A:Math类概述
* Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
* B:成员方法
* public static int abs(int a)
* public static double ceil(double a)
* public static double floor(double a)
* public static int max(int a,int b) min自学
* public static double pow(double a,double b)
* public static double random()
* public static int round(float a) 参数为double的自学
* public static double sqrt(double a)
*/
public static void main(String[] args) {
System.out.println(Math.PI);
System.out.println(Math.abs(-10)); //取绝对值
//ceil天花板
/*
* 13.0
* 12.3
* 12.0
*/
System.out.println(Math.ceil(12.3)); //向上取整,但是结果是一个double
System.out.println(Math.ceil(12.99));
System.out.println("-----------");
//floor地板
/*
* 13.0
* 12.3
* 12.0
*/
System.out.println(Math.floor(12.3)); //向下取整,但是结果是一个double
System.out.println(Math.floor(12.99));
//获取两个值中的最大值
System.out.println(Math.max(20, 30));
//前面的数是底数,后面的数是指数
System.out.println(Math.pow(2, 3)); //2.0 ^ 3.0
//生成0.0到1.0之间的所以小数,包括0.0,不包括1.0
System.out.println(Math.random());
//四舍五入
System.out.println(Math.round(12.3f));
System.out.println(Math.round(12.9f));
//开平方
System.out.println(Math.sqrt(4));
System.out.println(Math.sqrt(2));
System.out.println(Math.sqrt(3));
}
}