国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

equals和==的區別

2019-11-10 22:25:56
字體:
來源:轉載
供稿:網友

今天寫點簡單點的吧,equals和==的作用都是作比較,但==是條件運算符,而equals是一個繼承了object類的方法,也就是說所有類都有一個equals方法,我們先來看一下equals方法在object類中的定義吧。

[java] view plain copypublic boolean equals(Object obj) {      return (this == obj);  }  顯然,equals比較的是兩個對象的地址,而我們通常需要比較的是兩個對象的內容(例如Student類的姓名或者學號),因此我們一般會重寫該類的equals方法,像我們經常使用的String類早已重寫了equals方法。

以下是Student類的equals方法重寫:

[java] view plain copypublic boolean equals(Object obj) {          if (this == obj)              return true;          if (obj == null)              return false;          if (getClass() != obj.getClass())              return false;          Student other = (Student) obj;          if (id == null) {              if (other.id != null)                  return false;          } else if (!id.equals(other.id))              return false;          return true;      }  

只有當兩個對象的學號(id)相等時才能返回true,否則返回false。

總結:==不能用于兩個對象(基本數據類型除外)內容的比較,需要使用重寫后的equals方法!!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汉阴县| 闵行区| 新竹县| 麻城市| 绥江县| 明光市| 台南县| 迁西县| 舞钢市| 闽侯县| 塔河县| 汽车| 卫辉市| 北川| 普兰县| 桂阳县| 大庆市| 海晏县| 上饶市| 五峰| 利津县| 泰州市| 宜章县| 巧家县| 黑水县| 遂平县| 城口县| 电白县| 黎平县| 徐州市| 昌宁县| 崇明县| 新源县| 梁河县| 含山县| 理塘县| 彰化县| 临高县| 确山县| 集安市| 阳谷县|