Давайте рассмотрим простой пример объекта Cat
. Я хочу быть уверенным, что «не null» cat
либо оранжевый, либо серый.В Java, каков булевский «порядок операций»?
if(cat != null && cat.getColor() == "orange" || cat.getColor() == "grey") {
//do stuff
}
Я верю И на первом месте, затем в ИЛИ. Я своего рода нечеткие, хотя, так вот мои вопросы:
Может кто-то ходить мне через это заявление, так что я уверен, что я получаю то, что происходит?
Кроме того, что произойдет, если я добавлю скобки; изменяет ли порядок операций?
Будет ли мой порядок операций изменяться с языка на другой?
Если вы вообще нечеткие, добавьте круглые скобки, чтобы это было очевидно. –
Даже если это не смущает вас, добавьте круглые скобки, чтобы другие люди могли это понять. –
Из википедии по логической логике: в таких случаях [двусмысленности] круглые скобки могут использоваться для уточнения порядка операций. Как всегда, сначала выполняются операции внутри самой внутренней пары, а затем следующая пара и т. Д. До тех пор, пока все операции в круглых скобках не будут завершены. Затем выполняются любые операции вне круглых скобок. – Stephano