以下是一个使用比较器对字符串进行排序的示例代码:
import java.util.Arrays;
import java.util.Comparator;
public class StringComparator {
    public static void main(String[] args) {
        String[] strings = {"apple", "banana", "cat", "dog", "elephant", "flower"};
        // 使用自定义的比较器进行排序
        Arrays.sort(strings, new CustomComparator());
        // 打印排序后的结果
        for (String s : strings) {
            System.out.println(s);
        }
    }
}
class CustomComparator implements Comparator {
    @Override
    public int compare(String s1, String s2) {
        // 首先对匹配的字符串进行排序
        if (s1.startsWith("a") && s2.startsWith("a")) {
            return s1.compareTo(s2);
        }
        // 对其余的字符串使用默认排序顺序
        return s1.compareTo(s2);
    }
}
 在上面的代码中,我们定义了一个CustomComparator类,实现了Comparator接口,重写了compare方法。在compare方法中,我们首先判断两个字符串是否都以字母"a"开头,如果是的话,我们使用默认的字符串比较方法compareTo进行排序。如果不是的话,我们同样使用默认的字符串比较方法进行排序。
然后,在main方法中,我们定义了一个字符串数组strings,并使用Arrays.sort方法对其进行排序,传入了自定义的比较器CustomComparator。最后,我们打印排序后的结果。
输出结果为:
apple
banana
cat
dog
elephant
flower
可以看到,首先以字母"a"开头的字符串按照默认排序顺序进行排序,然后是其余的字符串按照默认排序顺序进行排序。
                    上一篇:比较器如何工作?