@Mikhri

Почему в Java нельзя инициализировать переменные разных типов в условии for?

?Почему нельзя создать конструкцию вроде
for(int i = 1, double j = 1.0; i<=10, j<=9.99; i++, j++) {}

Но можно
for(double i = 1.0, j = 2.8; i<=10.0 || j<=9.99; i++, j+=0.38) {}

Почему инициализируемые в первом блоке условий цикла for переменные обязательно должны быть одного типа?
  • Вопрос задан
  • 148 просмотров
Решения вопроса 2
xez
@xez Куратор тега Java
TL Junior Roo
Наверное, потому что нельзя инициализировать таким образом переменные и вне цикла for.
Вы же не можете написать:
int a, double d
Но можете вот так:
int a; double d;
А в цикле точка-запятая уже будет разделением блока.
Если вам так уж приспичело итерироваться по двум переменным, можно это обойти так:
int i = 1;
double j = 1.0;
for(; i<=10, j<=9.99; i++, j++) {}
Ответ написан
@Ryabos
В соответствии со спецификацией языка. В разделе LocalVariableDeclaration указано, что должен быть указан тип переменной (UnannType) и затем одно или несколько имён переменных
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы