Box b1 = new Box();
Box b2 = b1;
Run Code Online (Sandbox Code Playgroud)
这里 b1 和 b2 指的是同一个对象。因此,在 2 个 String 对象的情况下,为什么我们不能使用==它们而不是.equals()方法来比较它们。
小智 6
真的没有区别。当您==用来比较对象时,您是在比较它们的内存地址,而不是它们的值。在您的示例中,doingb1 == b2将返回 true,因为它们是同一个对象。但是,如果您改为这样做:
Box b1 = new Box();
Box b2 = new Box();
Run Code Online (Sandbox Code Playgroud)
现在,如果您将它们与==它进行比较,尽管对象完全相同,但它将返回 false。字符串也是如此。
| 归档时间: |
|
| 查看次数: |
468 次 |
| 最近记录: |