Во время работы над чем-то я наткнулся на этот фрагмент кода:
if(true) {
String message = "Assignment possible";
}
if(true)
String message = "Time to leave earth"; // error!
Почему во втором случае возникает ошибка компиляции, когда можно писать условия "if" в java без фигурных скобок?
Сообщение об ошибке, похоже, не дает правильной информации:
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
Syntax error, insert ":: IdentifierOrNew" to complete ReferenceExpression
Syntax error, insert "AssignmentOperator Expression" to complete Assignment
Syntax error, insert ";" to complete Statement
String cannot be resolved to a variable
message cannot be resolved to a variable
Я пропустил что-то очевидное здесь? Может кто-нибудь объяснить это?