String类的equals方法源码解刨:
是一个重写与Object类的方法。
首先会按着Object方法的原理对比,也就是对比自身和参数是否是一个地址。是则返回true
如果不一样则判断参数是否是String类的实例
如果是则向下转型成String类,因为参数传过来的形参是Object类型
之后再将两个String转换成char类型的字符数组
对比两个字符数组的长度,如果不一致则返回false
如果一致则用==对比每一个字是否相等。中间有一个不相等则返回false,否则返回true
如果不是String类型的实例则返回false(最终的return)
String类的compareTo方法源码解刨:
是一个Comparable接口的实现方法,用来按字典方式比较
首先按照两个字符串字符个数的长度差来决定循环次数
将两个字符串分割成两个char类型的字符数组
对比两个数组的每一个字,如果一样继续向下对比
如果不一样则返回这两个不一样的字的Unicode编码差。
如果循环完了都一样,则返回第一个字符串和第二个字符串的长度差。
1204

被折叠的 条评论
为什么被折叠?



