首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java面试 >

JAVA口试经典-“==”与“equals”

2013-02-19 
JAVA面试经典--“”与“equals”所谓的面试题,无非就是考察你的基本功和细心,下面说一个典型的例子:“”和“e

JAVA面试经典--“==”与“equals”

      所谓的面试题,无非就是考察你的基本功和细心,下面说一个典型的例子:

       “==”和“equals”使我们平常见过最多的比较等价方法,虽然他们的使用相似,但是他们的原理确实天差地别,比如

String a="11";

String b="11";

String c=new String(b); ==关键字("new")

System.out.println(a==b);------1

System.out.println(a==c);------2

System.out.println(a.equals(b));-----3

System.out.println(a.equals(c));-----4

而结果我们会发现1、3、4是true,2是false

结果其原理很简单,“==”是比较对象的地址,c是引用别人的,而不是自己的,所以与a不匹配(自己的脑袋只有自己能用,别人的割下来你也用不了);而“equals”是比较内容的值,不管你是谁家的,只要结果一样就行(只要是帽子都能戴,不用去管他是垃圾堆里来的还是商店买的)!

备注:String c=new String(“11”);再去比较也是false!

热点排行