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

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

equals和==的區別

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

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长海县| 无极县| 长武县| 若尔盖县| 怀集县| 科技| 沙湾县| 辽宁省| 永登县| 共和县| 深圳市| 迁西县| 平阳县| 叶城县| 洪湖市| 晋城| 光泽县| 通道| 阳城县| 贵阳市| 大关县| 佛学| 明水县| 遂川县| 高邮市| 闵行区| 清苑县| 伊吾县| 洱源县| 阿拉善右旗| 白银市| 宾川县| 屯留县| 蓬莱市| 墨江| 抚州市| 曲沃县| 华安县| 泸定县| 镶黄旗| 平阴县|