== 和equals()的区别

2023-11-09

== 和equals()的区别

/**
 * == 和equals的区别 
 * 一、回顾 == 的使用
 * ==:运算符
 * 1、可以使用在基本数据类型变量和引用数据类型变量中
 * `  不同的类型可以比较,
 * 2、如果比较的是基本数据类型变量,比较两个变量保存的数据是否相等,(不一定类型形同)
 *    如果比较的是引用数据类型变量,比较的两个对象的地址值是否相同。即两个引用是否指向同一个对象实体
 *
 * 二、equals()方法使用:
 * 1、是一个方法,而非是运算符
 * 2、只能适用于引用数据类型
 * 3、Object类中equals()方法的定义:
 *   在Object对象中定义的equals()方法和==的作用是相同的
 *     public boolean equals(Object obj) {
 		return (this == obj);
 		}
 * 4、像String、Date、File、包装类都重写了Object类中的equals()方法,比较的不是两个引用的地址是否相同,比较的是两个实体内容是		否相同
 *
 * @author zhangjunwei
 *
 */
public class EqualsTest {
    public static void main(String[] args) {

//    comparedengyu();?

        compareyinyong();

    }
    /**
     * 比较的是基本数据类型变量
     */
    public static void comparedengyu() {

        int i=10;
        int j=10;
        double d = 10.0;
        System.out.println(i== j);//true
        System.out.println(i== d);//true

        char c = 10;
        System.out.println(i== c);//true

        char c1 = 'A';
        char c2 = 65;
        System.out.println(c1 == c2);//true
    }

    /**
     * 比较引用数据类型
     */
    public static void compareyinyong() {

        Customer c1 =new Customer("Tom",21);
        Customer c2 =new Customer("Tom",21);
        System.out.println(c1 == c2);//false

        String str1= new String("zhangjunwei");
        String str2= new String("zhangjunwei");
        System.out.println(str1 == str2);//false


        System.out.println("*****equal()方法的使用****");//false
//    boolean java.lang.Object.equals(Object obj)
//     public boolean equals(Object obj) {
//         return (this == obj);
//     }
//    其中object对象中是通过== 来比较的。

        System.out.println(c1.equals(c2));//false
        System.out.println(str1.equals(str2));//true

        Date date1 = new Date(+65464654646L);
        Date date2 = new Date(+65464654646L);

        System.out.println(date1.equals(date2));//true
    }

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

== 和equals()的区别 的相关文章

  • 中断并标签,“标签 MyLabel 丢失”

    我有这样的代码 if condition1 break MyLabel while true some code here MyLabel if condition2 break more code here 我收到此错误 标签 MyLab
  • 在 spring-boot 中设置 base-href 和 context-path - Angular 6 应用程序

    我正在构建一个 Web 应用程序 其中 UI 客户端组件是使用 Angular 6 构建的 后端 服务器端 位于 Spring boot 上 申请预计可在 http localhost 8080 FUtility 我通过在 appmodul
  • Java EE 6 和单例

    谁能解释一下在 Java EE 6 应用程序中实现 Singleton 的完整过程 我假设我不应该以声明静态变量的典型方式创建单例 而应该使用 Singleton注解 我必须这样做吗 难道只是声明一下的情况 Singleton就是这样 我还
  • 我在使用 JavaFX 绘制十字时遇到问题

    我正在尝试编写代码 在网格上对角绘制 3 个形状 前两个形状是正方形和圆形 我能做到 然而 第三种形状让我有些悲伤 我应该画一个十字 T 版本 而不是 X 每次我写出代码时 它看起来就像一个侧面 我知道我只是错过了一些简单的东西 但我真的很
  • 像 Google Play 商店一样在垂直 RecyclerView 中动态不同图像水平 RecyclerView

    我一直在关注这个教程 http android pratap blogspot co za 2015 12 horizo ntal recyclerview in vertical html http android pratap blog
  • 模式更新后 jOOQ 生成的类的运行时验证?

    我用org jooq util DefaultGenerator在构建过程中生成 jOOQ 类来表示我的数据库模式 当应用程序运行时 架构预计会在应用程序不知情的情况下发生更改 此类更改可能与已生成的代码兼容 也可能不兼容 如何在运行时检测
  • org.openqa.selenium.NoSuchSessionException:会话 ID 为空。调用 quit() 后使用 WebDriver?

    我已经进行了一些搜索 但仍然遇到同样的问题 我相信这可能是由于我的网络驱动程序是静态的造成的 我不太确定 在我的主课中 我包括了 BeforeTest and AfterTest BeforeTest包括根据我的 XML 文件启动新浏览器
  • Android:TelephonyManager 类

    我不明白为什么 API 文档中这么写TelephonyManager类是public 但是当我尝试创建一个实例时 它说它不是公共类 并且无法从包中访问 我看到它也说使用Context getSystemService Context TEL
  • Eclipse 无法识别 persistence.xml 的内容

    我在 eclipse 中收到以下错误 persistence xml 文件没有可识别的内容 我的 persistence xml 文件在我的应用程序中工作得很好 但 eclipse 一直给我这个错误 我在移动文件并使用 m2eclipse
  • Java 客户端到服务器未知来源

    我有一个简单的乒乓球游戏 需要通过网络工作 服务器将创建一个带有球和 2 个球棒位置的游戏 当客户端连接到服务器时 服务器将创建一个名为 PongPlayerThread 的新类 它将处理客户端到服务器的输入和输出流 我的服务器工作100
  • java.lang.ClassNotFoundException: org.jboss.logging.Logger

    我有一个奇怪的问题 我有一个JMS https en wiktionary org wiki JMS客户端应用程序和MDB https en wikipedia org wiki Enterprise JavaBeans Message d
  • 用于 Eclipse 的 Resharper [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Jersey 和 Spring 中的全局异常处理?

    我正在使用 Jersey 和 Spring 3 2 以及 Open CMIS 开发 RESTful Web 服务 我没有使用 Spring 的 MVC 模式 它只是 Spring IOC 和 Jersey SpringServlet 控制器
  • Log4j 2.0 中发现 ClassNotFoundException

    我已经设置了 log4j12 api beta2 jar 的构建路径 但它给出了 以下错误请帮我解决这个问题我的代码如下 java 文件 package com sst log4j class Product private int pro
  • Eclipse Juno 指标插件

    Eclipse JUNO 版本有哪些 Eclipse 指标插件 我尝试了一些通用指标插件 但没有一个能够在 Eclipse 的 JUNO 版本中正常运行 差点忘了 我们正在使用 Java 作为编程语言 我想要诸如圈复杂度 代码行数 方法长度
  • 对于双核手机,availableProcessors() 返回 1

    我最近购买了一部 Moto Atrix 2 手机 当我尝试查看手机中的处理器规格时 Runtime getRuntime availableProcessors 返回 1 proc cpuinfo 也仅包含有关处理器 0 的信息 出于好奇
  • java mysql 准备好的语句

    我正在尝试使用 java 向数据库中进行简单的插入 它告诉我我的 sql 语法已关闭 但是 当我复制打印出来的字符串并将其放入 phpmyadmin 中的 sql 命令中时 它会正确执行该命令 并且我似乎无法弄清楚 java 中的字符串查询
  • 空检查时可能未初始化错误

    我正在检查变量是否已初始化 但此时 netbeans 给了我variable reader might not have been initialized警告 我该如何解决 抑制这个问题 这是我的代码 摘要 final Reader rea
  • Java有没有类似微软CHESS的工具?

    是否有类似于 Microsoft 的现有 Java 工具CHESS http research microsoft com chess 或者 CHESS 源代码是否开放 以便我可以尝试将其转换为 Java 谷歌的织线工 http code
  • 需要在没有wsdl的情况下调用soap ws

    我是网络服务的新手 这个网络服务是由 siebel 提供的 我需要调用一项网络服务 我的客户向我提供了以下详细信息 这是 SOAP 对于产品 请使用它作为端点 Request

随机推荐

  • 快速幂理解

    2 9 gt gt 2 2 8 2 2 8 gt gt 2 4 4 2 4 4 gt gt 2 16 2 2 16 2 gt gt 2 256 1 思想 通过降阶的方式每次将幂除 2 将底数每次乘方 因为幂不能为奇数 所以如果幂为奇数必须处
  • 数据筛选特征方法-方差法

    在数理统计中 方差是测算随机变量离散趋势最重要 最常用的指标 方差是各变量值与其均值离差平方的平均数 它是测算数值型数据离散程度的最重要的方法 当数据分布比较集中时 各个数据与平均数的差的平方和较小 当数据分布比较分散 即数据在平均数附近波
  • 正确理解层次方框图

    正确的层次方框图示例 图片来源 https blog csdn net qq 15037231 article details 60467793 注意 在网上搜索层次方框图会出现很多类似的图 但很多都是错的 层次方框图用树形结构的一系列多层
  • 重定向与请求转发

    分享一下在华清远见学习的知识点 重定向与请求转发也是面试中容易问到的问题 目录 一 重定向 二 请求转发 三 请求转发与重定向数据传递 四 请求转发与重定向的区别 总结 一 重定向 重定向是指由原请求地址重新定位到某个新地址 原有的 req
  • Java培训班学费一般多少?Java自学成功率是多少?

    Java培训班学费一般多少呢 Java自学成功率是多少 很多想学Java的新手对培训学费很是好奇 同时也想知道自学成功率 毕竟能不花钱就能学好的话 没必要花巨款学习 关于Java培训费用与自学成功率的答案请往下看 Java培训班学费一般多少
  • 鼠标移入背景图片放大(还原)

  • maven 配置 Tomcat7 插件和启动

    如果想使用 在 maven中使用 Tomcat7 来启动的话 可以这样配置
  • ORBSLAM2计算描述子距离——C++ 位操作得到二进制32位int值中有多少个1

    看ORBSLAM2时算描述子之间的距离时看到的神奇的位操作 特此记录一哈 unsigned int v pa pb v v v gt gt 1 0x55555555 v v 0x33333333 v gt gt 2 0x33333333 d
  • 如何解析EML(邮件)格式的文件以及一款小巧的EML邮件阅读工具

    在理解EML格式的时候 先回顾一下历史 这样有助于理解邮件的格式 比如邮件传输时为何会有多种编码方式 此外 理解EML格式也有助于理解HTTP协议 历史溯源 由于历史原因 我们目前看到的大部分的网络协议都是基于ASCII码这种纯文本方式 也
  • 用java写一个权限系统的框架

    Java是一种强大的编程语言 可以用来构建复杂的软件系统 包括权限系统 下面是一个简单的Java权限系统的框架 定义用户和角色 首先需要定义用户和角色 比如管理员 普通用户等 分配权限 为每个角色分配不同的权限 比如管理员有所有权限 普通用
  • 58,滴滴,京东等大厂都在用的抓包工具:Fiddler。软件测试工程师必会技能

    前言 Fiddler是一个http协议调试代理工具 它能够记录并检查所有你的电脑和互联网之间的http通讯 设置断点 查看所有的 进出 Fiddler的数据 例如cookie html js css等文件 换句话说就是Fiddler可以拦截
  • java jdbc 时间段和日期段查询

    首先先创建1000条随机日期数据 package jdbc import java sql Connection import java sql Date import java sql DriverManager import java
  • 顺序表的操作及实现(C++)

    顺序表的操作是大家在学习数据结构的第一个模块 也是最简单的一个 下列是顺序表的六种基本操作详解 希望能对您有所帮助 1 建立一个顺序表 输入n个元素并输出 define MAXSIZE 100 确定最大值 define OK 1 defin
  • 世界十大美女城市排行榜出炉:荷兰首都居首位

    中新网6月4日电 据俄罗斯媒体报道 在旅游旺季到来之际 世界著名的 游客文摘 杂志日前公布了在男性游客心目中拥有世界最漂亮女性的十大城市排行榜 荷兰的阿姆斯特丹 以色列的特拉维夫和加拿大的蒙特利尔位列三甲 俄罗斯首都莫斯科位列第五 高居十大
  • String类

    一 字符串 C语言中 字符串用字符数组来实现 Java语言中 用类来实现 该类共分为两大类 字符串常量 不可修改的字符串 存放在String类的对象中 字符串变量 可以修改的字符串 存放在StringBuffer类的对象中 二 String
  • Android:玩转Retrofit+OkHttp+Kotlin协程 网络请求架构

    文章目录 引言 实战 1 引入开源库 2 简单封装 3 开始使用 MVP架构模式 MVVM架构模式 看 这里 https blog csdn net sange77 article details 103959389 引言 目前做APP网络
  • ProcessBuilder waitFor 调用外部应用

    小程序项目最初使用ffmpeg转换微信录音文件为wav格式 再交给阿里云asr识别成文字 视频音频转换最常用是ffmpeg 1 ffmpeg i a mp3 b wav 相关文章 小程序实现语音识别转文字 坑路历程 问题变成怎样使用java
  • swagger 的异常错误

    Errors Hide Resolver error Invalid attempt to iterate non iterable instance In order to be iterable non array objects mu
  • 华为OD机试真题B卷 Java 实现【分班】,附详细解题思路

    一 题目描述 幼儿园两个班的小朋友在排队时混在了一起 每位小朋友都知道自己是否与前面一位小朋友是否同班 请你帮忙把同班的小朋友找出来 小朋友的编号为整数 与前一位小朋友同班用Y表示 不同班用N表示 二 输入描述 输入为空格分开的小朋友编号和
  • == 和equals()的区别

    和equals 的区别 和equals的区别 一 回顾 的使用 运算符 1 可以使用在基本数据类型变量和引用数据类型变量中 不同的类型可以比较 2 如果比较的是基本数据类型变量 比较两个变量保存的数据是否相等 不一定类型形同 如果比较的是引