Java中Math类、Random类和System类的概述

1:Math
(1)针对数学运算进行操作的类
(2)常见方法

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]
                   }
                     }

                    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值