Java equalsIgnoreCase()不区分大小写判断两个字符串是否相等

Java equalsIgnoreCase()不区分大小写判断两个字符串是否相等

今天学到了一个好用的东西,一个方法就实现不区分大小写的字符串判断,可以用在验证码校验上,这个方法就是equalsIgnoreCase(),具体用法:

public class Demo2 {
    public static void main(String[] args) {
        String check = "WdNmD"; //假设为图片里显示的验证码
        String input = "wdnmd"; //假设为用户输入验证码
        if (input.equalsIgnoreCase(check)) {
            System.out.println("正确");
        }
        else {
            System.out.println("错误");
        }
    }
}

最后的结果是正确
这个用法和equals()一样,只是不分区大小写
这个方法的实现源码主要是通过将字母统一转换成大写或小写后再一个个比较的
(部分源码)

// If characters don't match but case may be ignored,
// try converting both characters to uppercase.
// If the results match, then the comparison scan should
// continue.
char u1 = Character.toUpperCase(c1);
char u2 = Character.toUpperCase(c2);
if (u1 == u2) {
    continue;
}
// Unfortunately, conversion to uppercase does not work properly
// for the Georgian alphabet, which has strange rules about case
// conversion.  So we need to make one last check before
// exiting.
if (Character.toLowerCase(u1) == Character.toLowerCase(u2)) {
    continue;
}
  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

1594231563

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值