Что касается класса Струнный:
Равных() метод сравнивает «значение» внутри экземпляров String (в куче), независимо, если две объектные ссылки см к тому же экземпляру String или нет. Если любые две ссылки на объекты типа String относятся к тому же экземпляру String, тогда это здорово! Если две ссылки на объекты ссылаются на два разных экземпляра String, это не имеет значения. Его значение «значение» (то есть: содержимое массива символов) внутри каждого экземпляра String сравнивается.
С другой стороны, оператор «==» сравнивает значение двух ссылок на объекты, чтобы увидеть, относятся ли они к одному экземпляру строки. Если значение обеих ссылок на объекты ссылается на один и тот же экземпляр String, тогда результат булевого выражения будет «true» .. duh. Если, с другой стороны, значение обеих ссылок на объекты ссылается на разные экземпляры String (хотя оба экземпляра String имеют одинаковые «значения», то есть содержимое массивов символов каждого экземпляра String одинаково), результат булевого выражения будет «ложным».
- Кредиты Жак Colmenero См What is the difference between == vs equals() in Java?
Я думаю, вы должны прочитать разницу между == и равна –
потому что два '«1»' 's не будет то же самое. Они * разные * строковые экземпляры с * одинаковым * значением – TheLostMind
Вы должны «равняться» для элементов типа объекта –