查看完整版本: 出学JAVA需要了解的2

PP鬼鬼 2006-3-25 02:49 AM

出学JAVA需要了解的2

问题二:"=="和equals方法究竟有什么区别?

==操作符专门用来比较变量的值是否相等。比较好理解的一点是:
int        a=10;
int        b=10;
则a==b将是true。
但不好理解的地方是:
String        a=new        String("foo");
String        b=new        String("foo");
则a==b将返回false。

根据前一帖说过,对象变量其实是一个引用,它们的值是指向对象所在的内存地址,而不是对象本身。a和b都使用了new操作符,意味着将在内存中产生两个内容为"foo"的字符串,既然是“两个”,它们自然位于不同的内存地址。a和b的值其实是两个不同的内存地址的值,所以使用"=="操作符,结果会是false
页: [1]
查看完整版本: 出学JAVA需要了解的2