重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这期内容当中小编将会给大家带来有关Java中的比较器如何实现中文排序,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
创新互联公司主要从事成都网站建设、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务五龙口,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792compareTo 方法
compareTo()是两个字符串对象比较大小,返回一个整数值,如果调用字符串对象大,返回正整数,反之,返回负整数。相等则返回0。compareTo()是两个字符串对象按ASCII比较大小(汉字是Unicode),返回一个整数值,如果调用字符串对象大,返回正整数,反之,返回负整数。相等则返回0。
Comparator 比较器
Java 内实现自定义比较器比较简单,实现Comparator接口的compare()这个方法来制定排序规则,按照Java规范应满足以下约定,否则会抛Comparison method violates its general contract 异常。规则如下:
同时应满足以下约定:
自反性 sgn(compare(x, y)) == -sgn(compare(y, x))
传递性 compare(x, y) > 0 compare(y, z)>0) =>得出 compare(x, z)>0
一致性 (compare(x, y)==0) == (x.equals(y)),这点规范中原文是“not strictly required”,不是必须的,但是实现者应该知道不一致的后果,所以尽量实现这一要求.
Comparatorcomparator = new Comparator () { @Override public int compare(String s1, String s2) { return s1.compareTo(s2); } };