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

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

為什么用“==”與“equal”得到的輸出不同

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

  [code]
  class ObjectEquals {
    static int maxElements;
  
    ObjectEquals(int maxElements) {
      this.maxElements = maxElements;
    }
  
    public static void main(String[] args) {
      ObjectEquals a = new ObjectEquals(100);
      ObjectEquals b = new ObjectEquals(100);
      if(a.equals(b))
        System.out.      else
        System.out.println("Objects have different values");
    }
  }
  [/code]
  
  以上的輸出是 different ,為什么? 當然假如比較 "==" ,更是 different 了。
  
  nod,其實equals并非真正的比較value,在這里equals和==其實都是比較引用。
  但是我們經常認為equals是比較值,有兩個原因:
  1。原始類型的數據比如string,int,用equals實際是比較值。
  2。sun實際上是鼓勵大家通過重寫equals來使之的語義是比較值。但是我們往往很少重寫。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 湖北省| 平定县| 乌兰察布市| 北碚区| 石渠县| 双辽市| 和硕县| 武宁县| 凤城市| 百色市| 大名县| 含山县| 曲周县| 乐平市| 红河县| 宁蒗| 乌拉特中旗| 梨树县| 新泰市| 翼城县| 阜新市| 汤原县| 金山区| 泾源县| 蓬莱市| 民丰县| 利津县| 望奎县| 泰宁县| 灵石县| 襄樊市| 化隆| 安溪县| 瑞昌市| 鄂尔多斯市| 邓州市| 华亭县| 日土县| 舞阳县| 南川市| 天津市|