Mam do zrobienia w Javie długi zestaw porównań i chciałbym wiedzieć, czy jedno lub więcej z nich okaże się prawdą. Ciąg porównań był długi i trudny do odczytania, więc podzieliłem go ze względu na czytelność i automatycznie przeszedłem do użycia operatora skrótu |=
zamiast negativeValue = negativeValue || boolean
.
boolean negativeValue = false;
negativeValue |= (defaultStock < 0);
negativeValue |= (defaultWholesale < 0);
negativeValue |= (defaultRetail < 0);
negativeValue |= (defaultDelivery < 0);
Oczekuję, negativeValue
że będzie prawdziwe, jeśli którakolwiek z domyślnych wartości <coś> jest ujemna. Czy to jest ważne? Czy zrobi to, czego oczekuję? Nie widziałem tego wspomnianego w witrynie Sun ani w stosie, ale wydaje się, że Eclipse nie ma z tym problemu, a kod kompiluje się i działa.
Podobnie, gdybym chciał wykonać kilka logicznych przecięć, czy mógłbym użyć &=
zamiast &&
?