java之==和equals区别
2019独角兽企业重金招聘Python工程师标准>>>
"=="操作符的作用
1、用于基本数据类型的比较
2、判断引用是否指向堆内存的同一块地址。
equals所在位置:
在Object类当中,而Object是所有类的父类,包含在jdk里面,但并不适合绝大多数场景,通常需要重写
public boolean equals(Object obj) { return (this == obj); } equals的作用:
用于判断两个变量是否是对同一个对象的引用,即堆中的内容是否相同,返回值为布尔类型
equals的基本使用:
boolean b = obj1.equals(obj2); String类型比较不同对象内容是否相同,应该用equals,因为==用于比较引用类型和比较基本数据类型时具有不同的功能。
分析如下:
String作为一个对象来使用
例子一:对象不同,内容相同,"=="返回false,equals返回true
String s1 = new String("java"); String s2 = new String("java");
System.out.println(s1==s2); //false System.out.println(s1.equals(s2)); //true 例子二:同一对象,"=="和equals结果相同
String s1 = new String("java"); String s2 = s1;
System.out.println(s1==s2); //true System.out.println(s1.equals(s2)); //true String作为一个基本类型来使用
如果值不相同,对象就不相同,所以"==" 和equals结果一样
String s1 = "java"; String s2 = "java";
System.out.println(s1==s2); //true System.out.println(s1.equals(s2)); //true 如果String缓冲池内不存在与其指定值相同的String对象,那么此时虚拟机将为此创建新的String对象,并存放在String缓冲池内。
如果String缓冲池内存在与其指定值相同的String对象,那么此时虚拟机将不为此创建新的String对象,而直接返回已存在的String对象的引用。
3.对于枚举来说,使用equals和==是一样的
转载于:https://my.oschina.net/yiqifendou/blog/750631
java之==和equals区别相关推荐
- C#和Java中“==”和“equals”区别
C#中"=="和"equals"区别如下: 1 using System; 2 class Program 3 { 4 public static void M ...
- Java之 == 和 equals() 区别 hashCode() 解析
equals和HashCode深入理解以及Hash算法原理 https://blog.csdn.net/qq_21688757/article/details/53067814 hashCode ht ...
- Java 中 == 与 equals 区别,再确认一遍?
碰到"equals"和"=="这两个字符,老感觉差不多:其实还是有一些区别的,今天小编带大家一探究竟! 01.==介绍 它的作用是判断两个对象的地址是不是相等. ...
- 【Java学习笔记之二十九】Java中的equals和==的用法及区别
Java中的"equals"和"=="的用法及区别 在初学Java时,可能会经常碰到下面的代码: 1 String str1 = new String(&quo ...
- java中==和equals的区别
package com.atguigu.java1;import java.sql.Date;/** * equals()和==的区别* *一.回顾==的使用*==:运算符* 1.可以使用在基本数据类 ...
- 面试必问一:Java 中 == 和 equals 的区别你知道吗
面试必问一:Java 中 == 和 equals 的区别你知道吗 前言 关于这个问题,一般初中级面试中都会遇到,还记得我当初实习找工作的时候也遇到了这个问题,现在都还记得自己是怎么回答的:== 是基本 ...
- Java基础之equals和==的区别深入解析
Java基础之equals和==的区别深入解析 以下是本文目录大纲 equals 和 == 的区别 equals 的重写 复写hashCode方法,有31这个数字的作用 1. equals 和 == ...
- java == hashcode,java中==和equals和hashCode的区别
java中==和equals和hashCode的区别 == 的作用: 基本类型:比较的就是值是否相同 引用类型:比较的就是地址值是否相同(确切的说,是堆内存地址) equals 的作用: 引用类型:默 ...
- Java中的equals学习小结
Java中的equals是十分重要的,和= =要区别开来,最近在看孙卫琴的JAVA面向对象编程一书,觉得对其阐述写的不错,所以现在小结其 主要内容,而且要将 = =和 equals列为重要的对比概念来 ...
最新文章
- Hadoop综合大作业补交4次作业:获取全部校园新闻,网络爬虫基础练习,中文词频统计,熟悉常用的Linux操作...
- 自动构建工具Grunt
- CSS3 Media Queries详细介绍和使用实例
- 交互式计算机图形学总结:第五章 光照和明暗绘制
- 【Python自然语言处理】中文分词技术——统计分词
- com.jacob.com.ComFailException: Can‘t get object clsid from progid
- 安徽医科大学计算机二级证书,勇追梦 终圆梦 安徽医科大学2021届推免生成绩喜人...
- 软件测试文档模板 ppt,软件测试技术.ppt.pdf
- warning: use of old-style cast
- PCB、SCH转化为AD工程
- c语言滤出是个最小值,经典滤波算法及C语言程序
- Python语法基础 三
- 《信条》过去不可挽回, 未来已成史书(无剧透版)
- MFC的使用——在共享DLL中使用MFC、在静态库中使用MFC
- [DP]Apple Catching G
- 三维实景应用制作工具有哪些?
- 分区表类型:MBR和GUID区别
- 算法设计与分析基础知识点
- 认识计算机硬件教案免费,认识计算机硬件(教案)
- python 创建画板,Python 实现简单画板
热门文章
- 《XNA高级编程:Xbox 360和Windows》1-1
- python类方法可以访问类变量_python类变量可以从类方法访问? - python
- php mysql预处理_php mysqli扩展之预处理
- 华为南太无线解决方案部梁旭阳_工业互联网产业联盟网络组走进华为南京研究所技术研讨会顺利召开...
- js截屏代码_JavaScript网页截屏方法,你get到了嘛?
- 接收服务器显示帧控制错误,Websocket连接关闭,出现错误“接收到意外的继续帧”...
- Python中非常有用的三个数据科学库
- csla java_Csla框架之命令对象理解
- [湖南集训]更为厉害 树上主席树-以树深度为下下标建立主席树
- [SCOI2008]着色方案