У меня есть длинный набор сравнений на Java, и я хотел бы знать, верны ли одно или несколько из них. Строка сравнений была длинной и сложной для чтения, поэтому я разбил ее для удобства чтения и автоматически перешел к использованию ярлыка оператора |=
вместо negativeValue = negativeValue || boolean
.
boolean negativeValue = false;
negativeValue |= (defaultStock < 0);
negativeValue |= (defaultWholesale < 0);
negativeValue |= (defaultRetail < 0);
negativeValue |= (defaultDelivery < 0);
Я ожидаю, что negativeValue
это будет правда, если любое из значений <something> по умолчанию отрицательно. Это действительно так? Будет ли оно делать то, что я ожидаю? Я не видел, чтобы это упоминалось на сайте Sun или stackoverflow, но у Eclipse, похоже, нет проблем с этим, и код компилируется и запускается.
Точно так же, если бы я хотел выполнить несколько логических пересечений, мог бы я использовать &=
вместо &&
?