您的位置:首页网页设计JSP教程 → 实例介绍java的==和equals区别

实例介绍java的==和equals区别

时间:2010/2/2 11:32:00来源:本站整理作者:我要评论(0)

实例介绍java的==和equals区别:

          在java中数据类型分为两大类:一类是基本数据类型,另一类是引用数据类型.其中基本数据类型又分为8种分别是:四种整数类型(byte、short、int、long),两种浮点数类型(float、double),一种字符类型(char),一种布尔类型(boolean) 
   引用数据类型也就是我们常说的类了,在java中String也是一种引用类型. 
   使用==比较可以分成两种情况: 
     1,当等号左右都是基本数据类型时,那就是值的比较  例如: 
          int a=1; 
          int b=1; 
          int c=2; 
          System.out.println(a==b);  //结果为true 
          System.out.println(a==c);   //结果为false 
   因为我们左右两边都是基本数据类型,所以比较的是变量的值是否相等 
   2,当等号左右不是基本数据类型时,那就是地址的比较   例如: 
          String a="abc"; 
          String b="abc"; 
          String c="bc"; 
          String d=new String("abc"); 
          String e=new String("abc"); 
          System.out.println(a==b);//结果为true  
          System.out.println(a==c);//结果为false 
          System.out.println(a==d);//结果为false 
          System.out.println(d==e);//结果为false 
     因为等号左右都是对象也或者说是引用,所以比较的是地址,而a和b的地址是相同的,这里大家可能会有疑问为什么a和b的地址会相同,而和d的地址又不同了,以及d和e的地址为什么不同,这些问题涉及到java内部构造对象的原理,我会在下一篇文章java构造对象的原理里做答,这里只是要大家理解==的作用, 
   对于equals方法来说,比较简单,大家首先要明白,equals是一个方法,那使用方法的只能是对象的实例,所以equals比较的是对象的值是否相等,注意,对象和对象的值是两个不同的概念, 例如: 
          String a="abc";    
          String b="abc"; 
          String c="bc"; 
          String d=new String("abc"); 
          String e=new String("abc"); 
          System.out.println(a.equals("abc"));//这里采用内容:结果为true 
          System.out.println(a.equals("ab"));//这里采用内容:结果为false 
          System.out.println(a.equals(b));//这里采用一个对象:结果为true 
          System.out.println(a.equals(d));//这里采用一个对象:结果为true 
          System.out.println(a.equals(e));//这里采用一个对象:结果为true 
          System.out.println(a.equals(c));//这里采用一个对象:结果为false 
       因为equals()比较的是两个对象的内容是否相等,a的内容是"abc",b,d,e的内容都是"abc",所以结果都为true,而c内容是"bc"所以结果为false

相关视频

    没有数据

相关阅读 JS 中对象equals方法的实现cf11周年礼包奖励领取地址 cf11周年礼包活动礼包领取地址2020lol云顶之弈9.14b版更新内容介绍 云顶之弈9.14b版更新内容一览lol潘森重做技能介绍 lol潘森重做技能视频dnf冒险装备大支援活动介绍 dnf装备大支援礼盒内容dnf酷夏水上大对决活动介绍 dnf酷夏水上大对决活动奖励一览云顶之弈排位机制介绍 云顶之弈排位什么时候出lol云顶之弈凤凰属性是什么 lol云顶之弈冰晶凤凰技能属性介绍

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 没有查询到任何记录。 几个提升JSP应用程序效率的小方法JAVA面试问题宝典EL表达式语言的基础总结java常用图片读写程序

人气排行 java读取文本文件内容并获取文件大小教你5种JSP页面显示为乱码的解决方法教你java用getAddress方法取得IP地址spring依赖注入的3种实现方式JSP学习心得Java的字符串函数集锦告诉你jsp获取浏览者真实IP地址方法高手谈Java如何进阶