国产探花免费观看_亚洲丰满少妇自慰呻吟_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方法!!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 岢岚县| 夹江县| 定日县| 尚义县| 达孜县| 东丽区| 康保县| 阿拉尔市| 同江市| 永嘉县| 盘山县| 阆中市| 彰化县| 晋城| 新田县| 隆化县| 西和县| 南汇区| 昌乐县| 稷山县| 松桃| 莱州市| 五指山市| 海盐县| 莆田市| 乌拉特中旗| 乌恰县| 乐至县| 榆林市| 武义县| 安图县| 石棉县| 仪陇县| 桃源县| 韶山市| 雷波县| 宝丰县| 大兴区| 获嘉县| 郓城县| 沙洋县|