Для кожного є користь, і я розумію відмінності, але що вважається найкращою / стандартною практикою? І чому?
Наприклад :
"myString".equals(myStringVar)
- Уникає потенційного NPE і не вимагає перевірки нуля. (Гарна річ?)
- Чистіше читати, оскільки нульова перевірка не потрібна.
- Якщо null не є очікуваним значенням, ваша програма може зламатись, не ставши мудрішим.
Однак
myStringVar.equals("myString")
- Потрібна перевірка нуля, якщо null є очікуваним значенням. (Гарна річ?)
- Може захаращувати складні умови за допомогою нульових перевірок.
- Дозволяє NPE повідомити нас, якщо щось порушилось.
Який варіант вважається стандартним для використання в Java і чому?