博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java中== 和 .equals()的区别
阅读量:4676 次
发布时间:2019-06-09

本文共 678 字,大约阅读时间需要 2 分钟。

  在java中,我们用来比较两个数据类型是否一样的时候,通常会用到 == 和 .equals(),然而这两者有什么区别呢。下面我们通过一些例子来看一下。

  

package test;public class test {	public static void main(String[] args) {		// TODO Auto-generated method stub		String a = "1";		String b = "1";		//int a = 1;		//int b = 1;		if(a == b)		{		System.out.println(" == ");		}		if(a.equals(b))		{	System.out.println(" .equal() ");		}	}}

  此时 == 和. equals()都会被输出,然而当我们把ab的数据类型换成string的时候,.equals()方法就会报错。这是为什么呢?

      对于基本数据类型来说(byte,short,char,int,long,float,double,boolean),判断两个变量是否相等的话,必须要要用 ==。

      对于非基本数据类型来说,. equals() 和 == 本质上都可以用于比较两个对象的的引用是否相同。只不过. equals() 在String,Integer,Date在这些类当中重写了,是用来判断具体存贮内容是否相等,而不是内存地址。

 

转载于:https://www.cnblogs.com/GSONG/p/5250151.html

你可能感兴趣的文章
POJ1051 P,MTHBGWB
查看>>
士兵队列训练问题
查看>>
js时间戳怎么转成日期格式
查看>>
div宽度设置无效问题解决
查看>>
【ArcGIS Server 开发系列】Flyingis六大系列讲座精品PDF奉献
查看>>
SQL Server 2008空间数据应用系列九:使用空间工具(Spatial Tools)导入ESRI格式地图数据...
查看>>
3大主流NoSQL数据库性能对比测试报告
查看>>
【转载】后缀自动机学习总结
查看>>
播放器
查看>>
P5018-对称二叉树
查看>>
ASP .Net Core系统部署到SUSE Linux Enterprise Server 12 SP3 64 具体方案
查看>>
构建之法第二章个人技术和流程
查看>>
第三周linux学习
查看>>
[POJ1496 Word Index]
查看>>
jQuery插件AjaxFileUpload可以实现ajax文件上传
查看>>
20155321 2016-2017-2 《Java程序设计》第十周学习总结
查看>>
牢记!SQL Server数据库开发的二十一条注意点
查看>>
图片的Base64编码
查看>>
USACO Section 4.2 The Perfect Stall(二分图匹配)
查看>>
Linked List Cycle II
查看>>