Предположим, что я имею следующее выражение
String myString = getStringFromSomeExternalSource();
if (myString != null && myString.trim().length() != 0) {
...
}
Eclipse предупреждает меня, что myString
может быть нулевым во второй фразе булевого выражения. Однако я знаю, что некоторые компиляторы полностью выходят из логического выражения, если первое условие выходит из строя. Это правда с Java? Или порядок оценки не гарантируется?