System类
常用方法和案例
- exit: 退出当前程序
System.out.println("zhang");
// 0表示一个正常退出的状态
System.exit(0);
System.out.println("cheng");
- System.arraycopy: 复制数组元素,比较适合底层的调用,一般使用Arrays.copyOf完成复制数组
Arrays.copyOf 的底层使用的是System.arraycopy方法
int[] src = {1,2,3};
int[] dest = new int[3]; // {0, 0, 0}
/**
* * @param src the source array.
* * @param srcPos starting position in the source array.
* * @param dest the destination array.
* * @param destPos starting position in the destination data.
* * @param length the number of array elements to be copied.
*/
//dest 输出为: {0, 2, 3}
System.arraycopy(src, 1, dest, 1, 2);
-
System.currentTimeMillis: 返回当前时间距离 1970-1-1 的毫秒数。
-
gc: 运行垃圾回收机制 System.gc();
BigInterger和BigDecimal介绍
应用场景
BigInterger 适合保存比较大的整数
1、当long不够用的时候,可以使用BigInteger的类来搞定
2、在对BigInteger进行运算的时候,需要调用对应的方法,不能直接 + - * /
BigInteger bigInteger = new BigInteger("1000000");
BigInteger bigInteger1 = new BigInteger("10000");
System.out.println("加法" + bigInteger.add(bigInteger1));
System.out.println("减法" + bigInteger.subtract(bigInteger1));
System.out.println("乘法" + bigInteger.multiply(bigInteger1));
System.out.println("除法" + bigInteger.divide(bigInteger1));
BigDecimal 适合保存经度更高的浮点数(小数)
1、当double不够用的时候,可以使用BigDecimal的类来搞定。
2、在对BigDecimal进行运算的时候,需要调用对应的方法,不能直接 + - * /
BigDecimal bigDecimal = new BigDecimal("1232.9882345737");
BigDecimal bigDecimal1 = new BigDecimal("1.1");
System.out.println("加法" + bigDecimal.add(bigDecimal1));
System.out.println("减法" + bigDecimal.subtract(bigDecimal1));
System.out.println("乘法" + bigDecimal.multiply(bigDecimal1));
// 在使用除法时,可能会出现除不尽的情况,出现此情况时,将进入无限循环,报错
// 可以在调用divide时,指定经度即可。
System.out.println("除法" + bigDecimal.divide(bigDecimal1, BigDecimal.ROUND_CEILING));