JDK API文档的使用+Random
程序员文章站
2022-03-26 19:24:12
JDK API文档的使用Arrays 是专门 针对数组操作的一个工具类二分查找法:使用System.out.println(res);// 在当前数组的指定范围内查找目标元素//如果找到 则返回目标元素在完整数组中的 索引int res1 = Arrays.binarySearch(arr,2,5,5);System.out.println(res1);排序算法的使用//使用Arrays提供的排序算法对数组进行排序// Arrays.sort(arr); // 包含开....
- JDK API文档的使用
Arrays 是专门 针对数组操作的一个工具类
二分查找法:
使用
System.out.println(res);
// 在当前数组的指定范围内查找目标元素
//如果找到 则返回目标元素在完整数组中的 索引
int res1 = Arrays.binarySearch(arr,2,5,5);
System.out.println(res1);
排序算法的使用
//使用Arrays提供的排序算法对数组进行排序
// Arrays.sort(arr);
// 包含开始位置 的 元素 但是不包含结束位置的元素
Arrays.sort(arr,2,5);
Jdk的原码的解读
private static int binarySearch0(int[] a, int fromIndex, int toIndex,
int key) {
int low = fromIndex;
int high = toIndex - 1;
while (low <= high) {// 循环比较
int mid = (low + high) >>> 1;// 计算中间位置 使用了无符号右移 相当于除2
int midVal = a[mid];
if (midVal < key)
low = mid + 1;
else if (midVal > key)
high = mid - 1;
else
return mid; // 找到则直接返回元素所在的索引
}
return -(low + 1); //没有找到 则返回负数
}
排序算法
将数组转换为String类型
//将数组转换为String
String arrStr = Arrays.toString(arr);
System.out.println("----" + arrStr);
[21, 35, 12, 20, 65, 5, 56]尝试解读原码 并自己实现将整型数组转换为字符串输出 输出的形式
Random
public static void main(String[] args) {
Random random = new Random();
//返回一个伪随机数 bound 返回的是任意的随机整数
System.out.println(random.nextInt());
//返回一个伪随机数 bound 返回的是0--100之间的数
System.out.println(random.nextInt(100));
}
//Math的Random的方法
System.out.println((int)(Math.random() * 80 + 20) );
//Math的Random的方法
System.out.println((int)(Math.random() * 80 + 20) );
数组的拷贝
public class ArrayCopyTest {
public static void main(String[] args) {
int[] arr= {21, 35, 20 ,12, 65, 5, 56};
int[] dest = new int[3];// 目标数组的长度必须大于等于源数组才可以
/*
int[] src,拷贝的 源数组
int srcPos,拷贝的源数组的起始位置
int[] dest,// 拷贝的目标数组
int destPos, //拷贝到目标数组中的放入的 起始位置
int length,// 拷贝 的元素的个数
*/
System.arraycopy(arr,0,dest,0,arr.length);
for(int x : dest){
System.out.println(x);
}
}
}
本文地址:https://blog.csdn.net/weixin_44283061/article/details/110959098