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

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

equals和==的區別

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

今天寫點簡單點的吧,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方法!!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 集安市| 宣汉县| 简阳市| 富民县| 朝阳区| 潞城市| 新绛县| 石泉县| 棋牌| 灵川县| 皮山县| 平顶山市| 洛南县| 溧水县| 阿城市| 商河县| 邹平县| 滦南县| 全椒县| 开鲁县| 海淀区| 庐江县| 汉源县| 麻阳| 土默特左旗| 陈巴尔虎旗| 凤凰县| 依安县| 遂平县| 肇东市| 安溪县| 万源市| 仙游县| 苏尼特右旗| 阳高县| 花莲市| 西昌市| 澜沧| 吴江市| 吴江市| 公主岭市|