A:绝对值
Math.abs(-10) 结果为10
B:向上取整
Math.ceil(12.34) 结果为13.0
C:向下取整
Math.floor(12.34) 结果12.0
D:两个数据中的较大值和较小值
Math.max(12, 23) 结果为23
Math.min(12, 23) 结果为12
E:a的b次幂
Math.pow(2, 3) 结果为8.0
F:随机数
Math.random() 结果为0.0-1.0之间的一个随机数(0.0=<随机数<1.0)
G:四舍五入
Math.round(12.56) 结果为13
Math.round(12.34f) 结果为12
H:正平方根
Math.sqrt(4) 结果为2.0
(3)举例:A:猜数字小游戏
package cn.itcast.game; import java.util.Random; import java.util.Scanner; /** * 这是猜数字小游戏 * @author 夜斗 * * */ public class GuessNumber { private GuessNumber(){ } public static void start(){ int number = (int)(Math.random()*100); Scanner sc = new Scanner(System.in); int count = 0; while(true){ System.out.println("请输入一个1-100的数:"); int guessnumber = sc.nextInt(); if(guessnumber>number){ count++; System.out.println("Bigger"); } else if(guessnumber<number){ count++; System.out.println("Smaller"); } else{ count++; System.out.println("You are right!"); break; } } if(count<=6){ System.out.println("You are clever!"); } else if(count>6&&count<=9){ System.out.println("You are good!"); } else{ System.out.println("You are normal!"); } } }
B:获取任意范围的随机数
package cn.itcast_02; import java.util.Scanner; public class MathDemo { public static void main(String[] args) { Scanner s = new Scanner(System.in); System.out.println("请输入随机数的起始值:"); int start = s.nextInt(); System.out.println("请输入随机数的末尾值:"); int end = s.nextInt(); getRandom(start, end); } public static void getRandom(int start,int end){ int mid = end - start + 1; int result = (int)(mid*Math.random())+start; System.out.println("该区间的一个随机数为: "+result); } }
2:Random (1)用于产生随机数的类 (2)构造方法: A:Random() 默认种子,每次产生的随机数不同 B:Random(long seed) 指定种子,每次种子相同,随机数就相同 (3)成员方法: A:int nextInt() 返回int范围内的随机数 B:int nextInt(int n) 返回[0,n)范围内的随机数 3:System (1)系统类,提供了一些有用的字段和方法 (2)成员方法A:运行垃圾回收器
System.gc();
B:退出jvm
System.exit(0);
C:获取当前时间的毫秒值
System.currentTimeMillis();
D:数组复制
System.arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
src:源数组
srcPos:源数组要复制的起始位置
dest:目的数组
destPos:目的数组放置的起始位置
length:复制的长度
举例:
import java.util.Arrays; public class SystemDemo { public static void main(String[] args) { int [] arr = {11,22,33,44,55}; int [] arr2 = {6,7,8,9,10}; System.arraycopy(arr,1,arr2,2,2); System.out.println(Arrays.toString(arr)); //结果为[11, 22, 33, 44, 55] System.out.println(Arrays.toString(arr2)); //结果为[6, 7, 22, 33, 10] } }