本帖最后由 李波 于 2012-9-8 14:56 编辑
- string1="aaa";
- string2="aaa";
- String string3=new String("aaa");
- String string4=new String("aaa");
- string1==string2 // true;
- string1.equals(string2);//true;
- string3==string4;//false 因为用new创建了2个对象,所以是两个不同的内存地址
- string3.equals(string4);//true 而String类的是不可改变的,所以会指向同一个内存地址,所以返回为true
- equals()是object的方法,所以只是适合对象,不适合于基本类型,equals()默认是用"=="比较两个对象的内存地址,如果想要比较两个对象的内容,要重写equals()方法才可...而==可以比较两个基本类型,也可以是对象...
复制代码 |