关闭

equalsIgnoreCase()方法与equals()的区别是什么?

标签: stringequalsequalsIgno
248人阅读 评论(1) 收藏 举报
分类:

今天在新项目上发现了一个很有趣的函数–equalsIgnoreCase()。那么它到底起到什么作用呢?简单点而言就是两个string类型的变量进行对比,看是否相等的功能,但是在对比是否相等的需求下,我们常用的还是equals()方法,相比equals而言,equalsIgnoreCase()有其自己的功能,可以忽略大小写,只要两个类型字母组成一样,那么就可以核对成功。
看如下的一个小demo,直接看结果就会体会结果:

 public static void main(String[] args) {
        String s1="HuoHuo";
        String s2="huohuo";
        String s3="Good";
        boolean rs1=s2.equalsIgnoreCase(s1);
        boolean rs2=s2.equals(s1);
        boolean rs3=s2.equalsIgnoreCase(s3);
        System.out.println(rs1);
        System.out.println(rs2);
        System.out.println(rs3);
    }

结果
看到这个关键字,突然想起上一个项目用到了身份证转换大小写的问题,由于紧急开发,在传输的身份证末尾到底是大写还是小写?第三方接口到底默认的是大写还是小写,最后由于版本上线,所以临时增添了重试机制。如果第一次失败,那么就把传值过来的身份证号末尾进行大小写替换,代码截图如下:
大小写
其实现在再看到这样的需求的时候,就发现对于一个想法真心有好几种实现机制,对于Character.toUpperCase(char) 和Character.toLowerCase(char)测试实例如下:

public static void main(String[] args) {
        String s1="HuoHuo";
        String s2="huohuo";
        String s3="HUOHUO";
//        将s1值转换成小写
        boolean rs1=s1.toLowerCase().equals(s2);
//        将s1值转换成大写
        boolean rs2=s1.toUpperCase().equals(s3);
        System.out.println(rs1);
        System.out.println(rs2);
    }

test
再此算是对关键字有一个简单的认识吧。

0
0

猜你在找
【直播】计算机视觉原理及实战——屈教授
【套餐】深度学习入门视频课程——唐宇迪
【套餐】Hadoop生态系统零基础入门
【套餐】嵌入式Linux C编程基础
【套餐】2017软考系统集成项目——任铄
【套餐】Android 5.x顶级视频课程——李宁
【直播】广义线性模型及其应用——李科
【直播】从0到1 区块链的概念到实践
【直播】机器学习之凸优化——马博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:167972次
    • 积分:7811
    • 等级:
    • 排名:第2650名
    • 原创:180篇
    • 转载:3篇
    • 译文:0篇
    • 评论:2607条
    博客专栏
    最新评论