比较器类(Arrays类)

1.重新认识一下Arrays类

2.两种比较器的使用

3.数据结构 二叉树(Binary Tree)

在之前一直使用的java.util.Arrays
.sort()实现数组的排序,其实Arrays类就是一个util包下的工具类,主要是完成所有与数组有关的操作功能。

在这个类里面有二分查找法的支持
public static int binarySearch(数据类型[] a,数据类型 key)。
范例:使用Arrays提供的方法实现二分查找

public class TestDemo{
    
    public static void main(String[] args) throws Exception{
        int data[]=new int[]{1,5,3,4,2,6,7,8,9};
        Arrays.sort(data);
        System.out.println(Arrays.binarySearch(data, 9));
    }   


}

的确找到了关键字为8,关于二分查找的实现= =参照数据结构或者查看JDK源码。

除了二分查找外,还有一个操作功能。
Arrays类提供了数组比较,与Object的equals完全没有关系。
public static boolean equals(数据类型[] a,数据类型[] a2)

要想判断数组是否相同,需要顺序完全一直:
范例:判断a,b数组是否相同

package TestDemo;


import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;



public class TestDemo{
    
    public static void main(String[] args) throws Exception{
        int a[]=new int[]{1,2,3};
        int b[]=new int[]{2,1,3};

        
        System.out.println(Arrays.equals(a, b));
    }   


}


image.png

还有一个将数组变为字符串输出:

public static String toString(int [] a)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容