АццкоМото wrote:
А смысл? Все равно int который по сути bool могут сравнивать только с нулем, но никак не с единицей. Более того, не знаю, как сейчас дело обстоит в стандартах, но когда деревья были большими A!=B совсем не было обязано равняться 0 или 1. Чуть чаще, чем всегда, это было эквивалентом (A-B)
Т.е. 35!=0 все равно равнялось 35
Для красоты. Например, когда у нас есть в Си:
typedef int bool;
и мы пользуемся этим самым bool то во время отладки или распечатки хочется видеть именно 1 и 0, а не 35 и 0. К тому же возвращая return B != 0 как бы явно указываешь, что возвращаешь не значение B, а именно true/false.
Мало того, если речь про Java, то мы вообще не можем вернуть
boolean verify(..., int B)
{
...
if (...) return B;
...
}
будет ошибка компиляции. Обязательно должно быть return B != 0;