String 比较参考文献和比较价值意味着什么?

String 比较参考文献和比较价值意味着什么?,string,String,有人能告诉我什么时候使用equals()和“==”运算符吗? 我知道equals()方法用于比较字符串的值。我还知道“==”用于检查引用。这到底意味着什么?想象一下,有两辆车。假设他们是一辆绿色的丰田花冠和一辆橙色的法拉利。你想比较它们——它们相似吗?对它们都是汽车。但是,它们有不同的性质。他们的价值观(字面上和比喻上)是不平等的,当我谈论花冠时,我肯定不是在谈论法拉利。当我提到一个,我不是指另一个 现在,想象一下,我正在和你谈论一个红色的花冠。你还有一个红色的花冠。整洁的我们有同一辆车!除了,

有人能告诉我什么时候使用equals()和“==”运算符吗?
我知道equals()方法用于比较字符串的值。我还知道“==”用于检查引用。这到底意味着什么?

想象一下,有两辆车。假设他们是一辆绿色的丰田花冠和一辆橙色的法拉利。你想比较它们——它们相似吗?对它们都是汽车。但是,它们有不同的性质。他们的价值观(字面上和比喻上)是不平等的,当我谈论花冠时,我肯定不是在谈论法拉利。当我提到一个,我不是指另一个

现在,想象一下,我正在和你谈论一个红色的花冠。你还有一个红色的花冠。整洁的我们有同一辆车!除了,他们不是完全一样的车,因为他们是两辆不同的车。它们恰好具有相同的值。我可以把我的画出来,它不会改变你的,或者我可以把我的画砸了,它们不会有相同的价值。比较我们的两辆车就像使用
equals()
方法一样。我们可以说它们具有相同的值(直到我崩溃我的,或者以其他方式改变它)

但是,如果我们每个人都在谈论一个红色的花冠,结果是我从你把你的花冠卖给的人那里买了这个花冠——嘿,我们谈论的是同一个花冠!我们实际上指的是同一件事。如果我撞坏了我的花冠,我也撞坏了你的(以前的)花冠。如果我油漆它,它仍然是同一辆车。检查我们谈论的是否完全相同的事情是引用相等。

可能重复的