1.Math
java.lang.Math:
double Math.random(): 返回0.0~1.0 之间的随机数
double Math.pow(double a, double b): 返回 a 的 b 次幂
static int abs(int) : 求绝对值
double ceil(double) : 向上取整
double floor(double): 向下取整
double round(double): 四舍五入
double sqrt(double): 开方
public class MathClass {
public static void main(String[] args){
//以下均为Math的静态方法
//取[0, 1)的随机数
double random = Math.random();
System.out.println("random方法:" + random);
//球a的b次幂
double pow = Math.pow(2, 4);
System.out.println("pow方法:" + pow);
//取绝对值
double abs = Math.abs(-4);
System.out.println("abs方法:" + abs);
//向上取整(变大)
double ceil = Math.ceil(3.14);
System.out.println("ceil方法:" + ceil);
//向下取整(变小)
double floor = Math.floor(3.59);
System.out.println("floor方法:" + floor);
//四舍五入(+ 0.5后向下取整)
double round = Math.round(3.14);
System.out.println("round方法:" + round);
//开方
double sqrt = Math.sqrt(2);
System.out.println("sqrt方法:" + sqrt);
}
}
2.Arrays
java.util.Arrays:
String Arrays.toString(数组): 以[元素1, 元素2]格式打印数组
import java.util.Arrays;
public class Demo02CharArray {
public static void main(String[] args) {
char[] arr = {'Y','N','H','C','M'};
System.out.println(Arrays.toString(arr));
// YNHCM
System.out.println(arr);
}
}
int[] Arrays.copyOf(int[] src, int newLength)
public class Demo02ArrayCopy2 {
public static void main(String[] args) {
// 需求: 让arr变成 {1,2,3,4,5,6}
int[] arr = {1,2,3,4,5};
// 参数1: 要复制的数组 -> 源数组
// 参数2: 要生成的新数组的长度
// 返回值: 生成的新数组
arr = Arrays.copyOf(arr, arr.length + 1);
arr[arr.length - 1] = 6;
}
}
void sort(int[] arr): 按照升序排序, 只支持基本数据类型和String
import java.util.Arrays;
public class Demo04Arrays {
public static void main(String[] args) {
int[] a = {8, 3, 1, 7, 2};
// 在原来的数组上直接修改排序 - 升序
Arrays.sort(a);
System.out.println(Arrays.toString(a));
// 字典顺序
String[] ss = {"lucy","tom","jack","rose"};
Arrays.sort(ss);
System.out.println(Arrays.toString(ss));
}
}
3.System
java.util.System:
static void arraycopy(int[] src, int srcPos, int[] dest, int destPos, int length)
import java.util.Arrays;
public class Demo01ArrayCopy {
public static void main(String[] args) {
// 需求: 让arr变成 {1,2,3,4,5,6}
int[] arr = {1,2,3,4,5};
// 1.数组扩容
int[] b = new int[arr.length+1];
// 2.数组复制
/*
参数1: 要复制的数组 - 源数组
参数2: 从要源数组的哪个位置开始复制
参数3: 要复制到哪个数组中 - 目标数组
参数4: 要从b数组的哪个位置开始存放值
参数5: 要复制几个元素
*/
System.arraycopy(arr, 0, b, 0, arr.length);
// 3.再最后加一个6
b[b.length - 1] = 6;
// 4.将arr替换
arr = b;
System.out.println(Arrays.toString(arr));
}
}
long currentTimeMillis();
public class Demo03System {
public static void main(String[] args) {
// 获得当前系统时间 - 毫秒
long time = System.currentTimeMillis();
String str = "";
for (int i = 0; i < 1000000000; i++){
// 建议频繁的字符串拼接, 不要使用 +
str = str + i;
}
long time1 = System.currentTimeMillis();
// 计算代码执行效率(时间差)
System.out.println(time1 - time);
}
}