zoukankan      html  css  js  c++  java
  • 一脚踩进java之基础篇27——常用API(System类,Math类)

    一、System类

    1.1 概念

      1)在API中System类介绍的比较简单,我们给出定义,System中代表程序所在系统,提供了对应的一些系统属性信息,和系统操作。

      2)System类不能手动创建对象,因为构造方法被private修饰,阻止外界创建对象。System类中的都是static方法,类名访问即可。在JDK中,有许多这样的类。

    1.2 常用方法

      1) currentTimeMillis() 获取当前系统时间与1970年01月01日00:00点之间的毫秒差值

      2)exit(int status) 用来结束正在运行的Java程序。参数传入一个数字即可。通常传入0记为正常状态,其他为异常状态

      3)gc() 用来运行JVM中的垃圾回收器,完成内存中垃圾的清除。

      4)getProperty(String key) 用来获取指定(字符串名称)中所记录的系统属性信息

     

      1)arraycopy方法,用来实现将源数组部分元素复制到目标数组的指定位置

    1.3 System类的方法练习

      1)练习一:验证for循环打印数字1-9999所需要使用的时间(毫秒)

    public static void main(String[] args) {
        long start = System.currentTimeMillis();
        for (int i=0; i<10000; i++) {
             System.out.println(i);
      }
      long end = System.currentTimeMillis();
      System.out.println("共耗时毫秒:" + (end-start) );
    }

      2)练习二:将src数组中前3个元素,复制到dest数组的前3个位置上

      复制元素前:src数组元素[1,2,3,4,5],dest数组元素[6,7,8,9,10]

      复制元素后:src数组元素[1,2,3,4,5],dest数组元素[1,2,3,9,10]

    public static void main(String[] args) {
      int[] src = new int[]{1,2,3,4,5};
      int[] dest = new int[]{6,7,8,9,10};
      System.arraycopy( src, 0, dest, 0, 3);
      代码运行后:两个数组中的元素发生了变化
      src数组元素[1,2,3,4,5]
      dest数组元素[1,2,3,9,10]
    }

      3)练习三:循环生成100-999之间的的三位数并进行打印该数,当该数能被10整除时,结束运行的程序

    public static void main(String[] args){
        Random random = new Random();
        while(true){
          int number = random.nextInt(900)+100; //0-899 + 100
          if (nmumber % 10 == 0) {
              System.exit(0);
        }
      }
    }

    二、Math类

    2.1 概念

    Math 类是包含用于执行基本数学运算的方法的数学工具类,如初等指数、对数、平方根和三角函数。
    类似这样的工具类,其所有方法均为静态方法,并且一般不会创建对象。如System类

    2.2 常用方法

      1) abs方法,结果都为正数

    double d1 = Math.abs(-5); // d1的值为5
    double d2 = Math.abs(5); // d2的值为5

      2)ceil方法,结果为比参数值大的最小整数的double值

    double d1 = Math.ceil(3.3); //d1的值为 4.0
    double d2 = Math.ceil(-3.3); //d2的值为 -3.0
    double d3 = Math.ceil(5.1); // d3的值为 6.0

      3)floor方法,结果为比参数值小的最大整数的double值

    double d1 = Math.floor(3.3); //d1的值为3.0
    double d2 = Math.floor(-3.3); //d2的值为-4.0
    double d3 = Math.floor(5.1); //d3的值为 5.0

      4)max方法,返回两个参数值中较大的值

    double d1 = Math.max(3.3, 5.5); //d1的值为5.5
    double d2 = Math.max(-3.3, -5.5); //d2的值为-3.3

      5)min方法,返回两个参数值中较小的值

    double d1 = Math.min(3.3, 5.5); //d1的值为3.3
    double d2 = Math.max(-3.3, -5.5); //d2的值为-5.5

      6)pow方法,返回第一个参数的第二个参数次幂的值

    double d1 = Math.pow(2.0, 3.0); //d1的值为 8.0
    double d2 = Math.pow(3.0, 3.0); //d2的值为27.0

      7)round方法,返回参数值四舍五入的结果

    double d1 = Math.round(5.5); //d1的值为6.0
    double d2 = Math.round(5.4); //d2的值为5.0

      8)random方法,产生一个大于等于0.0且小于1.0的double小数

    double d1 = Math.random();

  • 相关阅读:
    mysql 优化20点
    java function
    设计模式 概览
    Linux安装java1.8并配置环境变量
    windows下一次执行多个sql文件
    mybatis查询结果为空时的返回值问题
    Java中Json与String互转
    SSM Service自动注入失败
    本地安装Mysql5.7过程中出现的一系列问题
    解决本地工具无法连接服务器上的mysql的问题
  • 原文地址:https://www.cnblogs.com/smilehq/p/12882486.html
Copyright © 2011-2022 走看看