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

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

equals和==的區別

2019-11-10 18:55:08
字體:
來源:轉載
供稿:網友

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 白沙| 乐陵市| 稷山县| 阳高县| 连云港市| 潜江市| 兴隆县| 金秀| 河东区| 凭祥市| 股票| 昔阳县| 开鲁县| 黎城县| 天水市| 彭水| 龙江县| 同德县| 北碚区| 田阳县| 吉首市| 东辽县| 苗栗县| 双牌县| 满洲里市| 温宿县| 永和县| 依安县| 凤阳县| 武川县| 云浮市| 江山市| 石景山区| 元阳县| 奉化市| 东城区| 长治县| 哈密市| 八宿县| 渝中区| 潮安县|