Как да се сравни струни в преливането на Java стека на Руски

Операторът на == сравнява справка.

равнява метод сравнява стойностите.

Затова, ако искате да сравните струни за равенство, използване равни.

Въпреки това, в някои случаи, низа е гарантирано да бъде представена с един и същ обект през басейна на линии (низ интернирането). Тези случаи ясно описани в Java Language Specification.

Операторът на == се използва за проверка, че двете линии са насочени към един и същ обект.

Трябва да се отбележи, че == забележимо по-бързо от равни (за сравнение на връзки вместо призовават и характер в сравнение характер, ако струните с различна дължина), обаче, ако използвате низ от басейна (или система или им) заместване се равнява на == може да доведе до значително ускоряване. Но това се случва много рядко.

Пазете се от поканата се равнява на нула. Операторът на == сравнява струни перфектно, ако един или повече от тях е нулев. но поканата е равно на метод на линията, равна на нула. ще доведе до изключване.

За сравнение на низове, които могат да бъдат равни на нула. можете да използвате следния метод:

Той присъства в някои библиотеки на трети страни, например, Apache Commons.

Освен ако не сте с помощта на съвременни среди за разработка, те предупредя, ако се опитате да сравни струни с ==. Винаги обръщайте внимание на тези предупреждения.

Може би, ако вместо "Въпреки това, в някои случаи, линията е гарантирано да бъдат представлявани от един и същ обект", като например "В някои случаи, за сравнения във == могат да дадат правилния резултат (вж. Интернирането за подробностите), но не може да се разчита на него, освен ако не сте ясно да разбере, това, което правиш. "? - VladD 17 април '15 в 15:23