欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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); // 包含开....
  1. JDK API文档的使用
    Arrays 是专门 针对数组操作的一个工具类
    二分查找法:
    JDK API文档的使用+Random
    使用
System.out.println(res);
// 在当前数组的指定范围内查找目标元素
//如果找到 则返回目标元素在完整数组中的 索引
int res1 = Arrays.binarySearch(arr,2,5,5);
System.out.println(res1);


排序算法的使用
JDK API文档的使用+Random

//使用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]尝试解读原码 并自己实现将整型数组转换为字符串输出 输出的形式
JDK API文档的使用+Random
JDK API文档的使用+Random
Random
JDK API文档的使用+Random
JDK API文档的使用+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));
}


JDK API文档的使用+Random
JDK API文档的使用+Random
JDK API文档的使用+Random

//Math的Random的方法
System.out.println((int)(Math.random() * 80 + 20) );

JDK API文档的使用+Random
JDK API文档的使用+Random

//Math的Random的方法
System.out.println((int)(Math.random() * 80 + 20) );

数组的拷贝
JDK API文档的使用+Random
JDK API文档的使用+Random

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

相关标签: java