Я знаю, что мы не можем использовать оператор присваивания в операторах if в java, поскольку мы используем его на любых других языках.
то есть
int a;
if(a = 1) { }
даст ошибку компиляции.
но следующий код работает отлично, как?
boolean b;
if(b = true) { }
РЕДАКТИРОВАТЬ: Является ли это исключением из правила, что назначение can not используется в инструкции if.