• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

java中String类中的这个boolean equals(Object obj),为什么括号里写Object

是因为重写了父类的方法吗

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与1

看了下源码 传入参数为anObject,里面一个判断是 this == anObject 应该是只有内存地址相关才会为true
另个一个anObject instanceof String,直接指定了判断类型是否为String
以上似乎只有传入参数类型为String才会进行判断 其他情况都是直接return false
所以个人理解入参写成Object类型只是写通用化模块的编码习惯的问题

public boolean equals(Object anObject) {
if (this == anObject) {//如果内存地址相同
  return true;
}
if (anObject instanceof String) {//如果是String类型实例
  String anotherString = (String)anObject;
  int n = count;
  if (n == anotherString.count) {
  char v1[] = value;
  char v2[] = anotherString.value;
  int i = offset;
  int j = anotherString.offset;
  while (n-- != 0) {
   if (v1[i++] != v2[j++])
   return false;
  }
  return true;
  }
}
return false;
}

使用道具 举报

发新帖

发布任务需求已有1031166位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!