字符串如何比较大小

在这里插入图片描述
字符比较(character comparison)是指按照字典次序对单个字符或字符串进行比较大小的操作,一般都是以ASCII码值的大小作为字符比较的标准。

【比较方式】

  1. 可以使用String类的compareTo()方法来实现。该方法用于判断一个字符串是大于、等于还是小于另一个字符串,返回int类型的差值。判断字符串大小的依据是它们在字典中的顺序。
  2. 实现Comparable接口
  3. 实现Comparator接口
String s1 = "abc";
String s2 = "efg";
System.out.println(s1.compareTo(s2));

比如ABC与ACDE比较,第一个字符相同,继续比较第二个字符,由于第二个字符是后面一个串大,所以不再继续比较,结果就是后面个串大。再如ABC与ABC123比较,比较三个字符后第一个串结束,所以就是后面一个串大。

所以,长度不能直接决定大小,字符串的大小是由左边开始最前面的字符决定的。

对两个字符串进行比较时,要注意以下几点:

  1. 两个不同长度的字符串进行比较时,不是长的字符串就一定。如字符串s1为ABCE,字符串s2为ABCDEF。对 s1 与 s2 进行比较时,s1 的第4个字符是E,s2 的第4个字符是D,而D < E,所以s1 > s2。尽管 s2 比s1长。

  2. 当字符串有空格时,空格也参加比较。如s1为 b ook(表示空格),s2 为book,显示-79,故s1 < s2

  3. 大写字母和小写字母的ASCII代码值是有区别的,所以,yes > YEs

  4. 当字符串全部用英文字母的大写(或小写)组成时,字符串的大小顺序和它们在字典中的顺序相同

  5. 由汉字组成的字符串可以参加比较。如李红 < 王军。它们的大小实际是由其拼音构成的字符串的大小来决定的。上例即:LIHONG < WANGJUN


【转载于】php中文网

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值