文章目录

  • 1. Math类
  • 1.1 基本介绍
  • 1.2 常用方法应用案例
  • 2. Random类
  • 3. Arrays类
  • 3.1 常见方法举例
  • 4. System类
  • 4.1 常见方法
  • 5. BigInteger 和 BigDecimal 类
  • 5.1 BigInteger 和 BigDecimal介绍
  • 5.2 常见方法
  • 5.3 方法示范
  • 6. Date类
  • 6.1 案例演示


1. Math类

1.1 基本介绍

Math类包含用于执行基本数学运算的方法,如初等指数,对数,平方根和三角函数。

1.2 常用方法应用案例

//1.绝对值
int abs = Math.abs(-9);
System.out.println(abs);//9
//2.pow 求幂
double pow = Math.pow(2, 4);//2 的 4 次方
System.out.println(pow);//16
//3.ceil 向上取整,返回>=该参数的最小整数(转成 double);
double ceil = Math.ceil(3.9);
System.out.println(ceil);//4.0
//4.floor 向下取整,返回<=该参数的最大整数(转成 double)
double floor = Math.floor(4.001);
System.out.println(floor);//4.0
//5.round 四舍五入 Math.floor(该参数+0.5)
long round = Math.round(5.51);
System.out.println(round);//6
//6.sqrt 求开方
double sqrt = Math.sqrt(9.0);
System.out.println(sqrt);//3.0
//7.random 求随机数
// random 返回的是 0 <= x < 1 之间的一个随机小数
System.out.println(Math.random())//输出0~1之间的一个随机小数

2. Random类

Random类是另一个Java提供的工具类,与Math类同等级别,只是Math类中有一个random方法,并不是一回事。该类主要是在指定的范围内产生一个随机数字

Random()//用于创建一个伪随机数生成器
Random(long seed)//使用一个long型的seed种子创建伪随机数生成器
public class Example02 {
    public static void main(String[] args) {
        //没有传入种子
        Random random = new Random();
        //在10以内随机产生一个整数
        System.out.println(random.nextInt(10));
        //传入种子
        Random r = new Random(10);
        //在10以内随机产生一个整数,输出的结果是一样的
        System.out.println(r.nextInt(10));
    }
}

3. Arrays类

3.1 常见方法举例

Arrays里面包含了一系列的静态方法,用于管理或操作数组,比如搜索或排序

  1. toString 返回数组的字符串形式,非常常用
    Arrays.toString(srr)
  2. sort排序(自然排序和定制排序)
  3. binarySearch 通过二分搜索法进行查找,要求必须排好序
    示例:int index = Arrays.binarySearch(arr,3)
  4. copyOf 数组元素的复制 Integer[] newArr = Arrays.copyOf(arr,arr.length)
  5. fill 数组元素的填充 Integer[] num = new Integer[]{9,3,3};Arrays.fill(num,99);
  6. equals 比较两个数组元素内容是否完全一致
  7. asList 将一组值,转换成list

4. System类

4.1 常见方法

  1. exit 退出当前程序 System.exit(0);
  2. arraycopy : 复制数组元素,比较适合底层调用,一般使用Arrays.copyOf 完成复制数组 int[] src={1,2,3}; int[] dest = new int [3]; System.arraycopy(src,0,dest,0,3);
  3. currentTimeMillens:返回当前时间距离1970-1-1的毫秒数
  4. gc:运行垃圾回收机制 System.gc();

5. BigInteger 和 BigDecimal 类

5.1 BigInteger 和 BigDecimal介绍

  1. BigInteger适合保存比较大的整形
  2. BigDecimal适合保存精度更高的浮点型(小数)

5.2 常见方法

  1. add 加
  2. substract 减
  3. multiply 乘
  4. divide 除

5.3 方法示范

//1. 在对 BigInteger 进行加减乘除的时候,需要使用对应的方法,不能直接进行 + - * /
//2. 可以创建一个 要操作的 BigInteger 然后进行相应操作
BigInteger add = bigInteger.add(bigInteger2);
System.out.println(add);//
BigInteger subtract = bigInteger.subtract(bigInteger2);
System.out.println(subtract);//减
BigInteger multiply = bigInteger.multiply(bigInteger2);
System.out.println(multiply);//乘
BigInteger divide = bigInteger.divide(bigInteger2);
System.out.println(divide);//除

6. Date类

  1. Date: 精确到毫秒,代表特定的瞬间
  2. SimpleDateFormat : 格式和解析日期的类

6.1 案例演示

Date d1 = new Date(); //获取当前系统时间
System.out.println("当前日期=" + d1);
Date d2 = new Date(9234567); //通过指定毫秒数得到时间
System.out.println("d2=" + d2); //获取某个时间对应的毫秒数
//1. 创建 SimpleDateFormat 对象,可以指定相应的格式
//2. 这里的格式使用的字母是规定好,不能乱写
SimpleDateFormat sdf = new SimpleDateFormat("yyyy 年 MM 月 dd 日 hh:mm:ss E");
String format = sdf.format(d1); // format:将日期转换成指定格式的字符串
System.out.println("当前日期=" + format);
/*1. 可以把一个格式化的 String 转成对应的 Date
2. 得到 Date 仍然在输出时,还是按照国外的形式,如果希望指定格式输出,需要转换
3. 在把 String -> Date , 使用的 sdf 格式需要和你给的 String 的格式一样,否则会抛出转换异常*/
String s = "1996 年 01 月 01 日 10:20:30 星期一";
Date parse = sdf.parse(s);
System.out.println("parse=" + sdf.format(parse));

努力学习,一起进步。