A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王英明 中级黑马   /  2015-5-6 21:20  /  712 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

//String类equals源码
public boolean equals(Object anObject) {
//如果是对象自己和自己进行比较,直接返回true
        if (this == anObject) {
            return true;
        }
        //判断两个对象是否是相同类型,如果不是直接返回false
        if (anObject instanceof String) {
        //将对象类型向下转型为--String类型
            String anotherString = (String) anObject;
            //String类静态成员变量value:   this.value = new char[0];将String类找对象转化value数组
            int n = value.length;//char[] value = s1.toCharArray();
            //比较俩个数组的长度是否相同,不同直接返回false
            if (n == anotherString.value.length) {
            //比较的两个对象赋值字符串数组
                char v1[] = value;
                char v2[] = anotherString.value;
                int i = 0;
                while (n-- != 0) {
                //只要其中一个元素不同,就返回false
                    if (v1[i] != v2[i])
                            return false;
                    i++;
                }
                return true;
            }
        }
        return false;
    }

2 个回复

倒序浏览
顶                                       
回复 使用道具 举报
顶一个,,,,,,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马