Как да се сравни струни в преливането на Java стека на Руски
Операторът на == сравнява справка.
равнява метод сравнява стойностите.
Затова, ако искате да сравните струни за равенство, използване равни.
Въпреки това, в някои случаи, низа е гарантирано да бъде представена с един и същ обект през басейна на линии (низ интернирането). Тези случаи ясно описани в Java Language Specification.
Операторът на == се използва за проверка, че двете линии са насочени към един и същ обект.
Трябва да се отбележи, че == забележимо по-бързо от равни (за сравнение на връзки вместо призовават и характер в сравнение характер, ако струните с различна дължина), обаче, ако използвате низ от басейна (или система или им) заместване се равнява на == може да доведе до значително ускоряване. Но това се случва много рядко.
Пазете се от поканата се равнява на нула. Операторът на == сравнява струни перфектно, ако един или повече от тях е нулев. но поканата е равно на метод на линията, равна на нула. ще доведе до изключване.
За сравнение на низове, които могат да бъдат равни на нула. можете да използвате следния метод:
Той присъства в някои библиотеки на трети страни, например, Apache Commons.
Освен ако не сте с помощта на съвременни среди за разработка, те предупредя, ако се опитате да сравни струни с ==. Винаги обръщайте внимание на тези предупреждения.
Може би, ако вместо "Въпреки това, в някои случаи, линията е гарантирано да бъдат представлявани от един и същ обект", като например "В някои случаи, за сравнения във == могат да дадат правилния резултат (вж. Интернирането за подробностите), но не може да се разчита на него, освен ако не сте ясно да разбере, това, което правиш. "? - VladD 17 април '15 в 15:23