比较器

很多的类中封装了sort,但是当我们想通过自己的方式进行排序时,需要重写比较器

想按照字符串的长短进行排序

如果是普通的数组,代码如下

        String[] str = {"aaa","bbb","bcda","badc","w"};

        Arrays.sort(str,new Comparator<String>()
        {
            public int compare(String s1,String s2)
            {
                return s1.length()-s2.length();
            }
        });
        System.out.println(str[0]);
        System.out.println(str[1]);
        System.out.println(str[2]);
        System.out.println(str[3]);
        System.out.println(str[3]);    

需要调用Arrays中的Sort,这样就需要将str也传进去

如果是Arraylist可以调用自己的sort然后重写比较器

ArrayList<String> arr = new ArrayList<>() ;
        arr.add("kkkkk");
        arr.add("aaa");
        arr.add("bbb");
        arr.add("ww");
        arr.add("badc");
        arr.sort(new Comparator<String>()
        {
            public int compare(String s1,String s2)
            {
                return s1.length()-s2.length();
            }
        });

 https://blog.csdn.net/qq_23179075/article/details/78753136  比较器

posted @ 2019-02-27 17:01  TheQi  阅读(186)  评论(0编辑  收藏  举报