justblues 2015-04-25 14:17 采纳率: 50%
浏览 1813
已采纳

关于string中的equals()求教

str.equals(str2)
string重写的equals()函数中 有这样一段:
private final char value[];value是一个定义好的char数组,

int n = value.length;//这句话是str的长度,是调用这个方法时自动将str赋值给value吗?
if (n == anotherString.value.length) {//anotherString.value 这是怎么实现的啊?字符串.char数组就转为char数组了?
char v1[] = value;
char v2[] = anotherString.value;

望各位指导~

  • 写回答

3条回答 默认 最新

  • danielinbiti 2015-04-25 15:25
    关注
     private final char value[];value是一个定义好的char数组,
    int n = value.length;//不是,在对string赋值的时候调用构造函数,都会有对应的对value的赋值
    if (n == anotherString.value.length) {//anotherString.value的生成同value的赋值  这你看源码的构造函数就能理解了
    char v1[] = value;
    char v2[] = anotherString.value;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?