API
Math
- ceil: 向上取整
- floor: 向下取整
- random: 生成[0,1)之间的double类型的随机数
- abs: 绝对值
System
- exit(int): 0表示正常退出,非0表示异常退出
- currentTimeMillis(): 当前时间毫秒值 距格林尼治时间 1997-1-1-00:00:00:000
- nanoTime(): 当前时间的纳秒值
- arraycopy(目标数组, 从索引开始拷贝,目的地数组,从目的地的索引位置开始拷贝,拷贝长度): 进行数组拷贝
Object&Objects
常用方法:
- toString() - 重写toString方法,可直接打印对象内容,方便查看
- equals() - 重写equals方法,可直接比较两个对象的内容
BigDecimal
概述:定点小数,把小数后所有的位数都记录,精度高,占用空间大
常用方法:
- add: 加法
- subtract: 减法
- multiple: 乘法
- divide: 除法 (除数,小数精度,舍入模式):
- BigDecimal.ROUND_UP: 进一法
- BigDecimal.ROUND_FLOOR: 去尾法
- BigDecimal.ROUND_HALF_UP: 四舍五入
Integer
包装类-引用类型
//基本类型相对应的引用类型
byte Byte
short Short
char Character
int Integer
long Long
float Float
double Double
boolean Boolean
自动拆箱,自动装箱
//拆箱 包装类转为基本类型
Integer x = Integer.ValueOf("200");
int y = x; //替换为 int y = x.intValue();
//装箱 基本类型转换为包装类型
int x = 100;
Integer y = x;//替换为 Integer y = Integer.ValueOf(x);
类型转换:
-
String.valueOf(数字)
-
int x = Integer.parselnt(“字符串”)
Integer优化
public static void main(String[] args){ // -128 ~ 127之间,使用一个Integer对象表示此int数字 Integer x = 127;// Integer.valueOf(100) new Integer(100) Integer y = 127;//Integer.valueOf(100) System.out.println(x == y);//true //超出了以上区间,每次会创建新的Integer对象 Integer a = 128;//Integer.valueOf(300) new Integer(300) Integer b = 128;//Integer.valueOf(300) new Integer(300) System.out.println(a == b);//false }
算法
二分查找
二分查找又叫对半查找,但必须是按照从小到大排好序的数组才可以进行二分查找
public static int binarySearch(int[] arr,int number){
//定义最大和最小索引变量
int min = 0;
int max = arr.length - 1;
int mid;
//进行条件判断
while(min <= max){
//定义给中间索引赋值 >> 偏移运算符
mid = (min + max) >> 1;
//如果中间索引值对应的元素小于要查找的元素往右开始查找
if(arr[mid] < number){
min = arr[mid + 1];
//如果中间索引值对应的元素大于要查找的元素往左开始查找
} else if(arr[mid] > number){
max = arr[mid - 1];
//如果找到了就返回该索引
}else{
return mid;
}
}
//如果没有找到返回-1
return -1;
}
冒泡排序
相邻两个数字进行比较把较大的字放在后面以此类推,知道数组中数据全部重新排列
public static void bubbleSort(int[] arr){
//外循环控制比较轮数
for(int i = 0; i < arr.length - 1; i++){
//内部循环控制每轮比较的次数
for(int j = 0; j < arr.length - 1 - i; j++){
//如果前面一个数大于后面一个数则进行交换
if(arr[j] > arr[j + 1]){
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}