==

==可用于比较基本类型与引用类型,对于基本类型变量比较的是其存储的值是否相等,对于引用类型则比较的是其是否指向同一个对象。

如:

int a = 10;

int b = 20;

double d = 10.0;

a==b的结果为false,由于a与b的值不相等;

a==d的结果为true,由于a与d的值相等。

Keyboard objOne = new Keyboard();

Keyboard objTwo = new Keyboard();

Keyboard objThree = objOne;

objOne == objTwo的结果为false,由于objOne与objTwo指向不同的对象;

objOne == objThree的结果为true,由于objOne与objThree指向同一个对象。

equals

equals只能用于引用类型变量的比较,如果没有对equals方法进行重写,比较的是其是否指向同一个对象。

如:

Keyboard objOne = new Keyboard();

Keyboard objTwo = new Keyboard();

Keyboard objThree = objOne;

objOne.equals(objTwo)的结果为false,由于objOne与objTwo指向不同的对象;

objOne.equals(objThree)的结果为true,由于objOne与objThree指向同一个对象。

String类对equals方法进行了重写,用来比较指向的字符串对象所存储的字符串是否相等

如:

String str1 = new String("hello");

String str2 = new String("hello");

String str3 = new String("good");

str1.equals(str2)的结果为true,由于str1与str2所指向的字符串对象存储的字符串相等;

str1.equals(str3)的结果为false,由于str1与str3所指向的字符串对象存储的字符串不相等。

上例中str1==str2的结果则为false,因为str1、str2指向不同的对象。

又如:

String str4 = "hello";

String str5 = "hello";

str4 == str5的结果为true,这里是由于str4、str5指向同一个字符串对象。

也即是说只创建了一个“hello”对象,与new方式每次都创建一个新的对象不同。

java == equals_java中==与equals相关推荐

  1. java继承中的 equals + hashCode+toString

    [0]README 0.1)本文转自 core java volume 1, 旨在理清 equals + hashCode方法: 0.2) 特别说明: 在java中, 只有基本类型不是对象, 例如,数 ...

  2. Java包装类中的equals方法

    基本数据类型包装类中的equals方法用于比对相同包装类中的值是否相等,如果两者比较的包装类类型不同则返回false: 1.基本型和基本型封装型进行"=="运算符的比较,基本型封装 ...

  3. java双等号和equals_Java中的 equals和双等号,你懂吗?

    点击蓝色"程序员的时光 "关注我 ,标注"星标",及时阅读最新技术文章! 在说equals方法与"=="之前,我们先来回顾一下Java中的数 ...

  4. java .equal_Java中的equals()

    经过几天的学习,终于对equals的用法有了比较全面的认识,并做一个总结. 1.equals的本意--即在Object对象中定义的equals()方法有什么样的意义. (此处先附上==的作用,后面仍有 ...

  5. java .equal_Java 中的equals()方法

    equals() 方法用于将字符串与指定的对象比较. String 类中重写了 equals() 方法用于比较两个字符串的内容是否相等. 语法 public boolean equals(Object ...

  6. java中equals函数所在的类,重写Java中的equals方法介绍

    Java中,只有8种基本类型不是对象,例如:4种整形类型(byte, short, int,long),2种浮点类型(flout, double),boolean, char不是对象,其他的所有类型, ...

  7. JAVA入门级教学之(Object类中的equals方法)

    package com.lbj.javase18; /**  * 关于Object中的equals方法:  *   * Object中的equals方法(核心):  *  public boolean ...

  8. java 和equals_java中的==和equals()

    ==和equals()都是比较相等的,那有什么区别和联系: 1:基本类型(primitive types), 共有8种,即int, short, long, byte, float, double, ...

  9. java map equals_Java中EnumMap的equals()方法: Java.util.EnumMap.equals() - Break易站

    Java中的Java.util.EnumMap.equals(obj)用于将传递的对象与 句法: boolean equals(Object obj) 参数:该方法采用Object类型的一个参数obj ...

最新文章

  1. Foursquare开源Rogue和Full-Loaded两款开发工具
  2. Leetcode 268. 缺失数字 解题思路及C++实现
  3. Opencv2.4.9源码分析——HoughLinesP
  4. python带界面的计算器
  5. python为什么是动态语言_python为什么是动态语言
  6. dba 权限_DBA如何玩转PG用户、角色和权限管理?
  7. Python 下的 lambda 算子
  8. NYOJ 37 动态规划 回文字符串
  9. JavaScript高级程序设计(4)
  10. tcl php,关于tcl语言
  11. 条码电子秤商品怎么录入?
  12. 2020国内软件测试机构排名
  13. AutoSAR系列讲解(深入篇)14.2-Mcal Port配置
  14. 周杰伦的歌里都有些啥?
  15. Educational Codeforces Round 91 D. Berserk And Fireball
  16. 奥比中光深度摄像头_奥比中光展示智能深度3D摄像头技术解决方案
  17. python print字体颜色 print背景颜色
  18. Abaqus 实体平移和旋转
  19. CSS font-size字体相关
  20. 人脸验证:DeepID(转)

热门文章

  1. 2020 年 Java 面试常见 350 题
  2. 认认真真推荐9个值得关注的公众号
  3. win10不能预览图片
  4. ​多分类下的ROC曲线和AUC​
  5. torch.view()
  6. InsightFace笔记
  7. hi3559 目标检测
  8. deprecated pixel format used, make sure you did set range correctly
  9. linux下安装boost
  10. python opencv多边形掩膜