Разница между Java & и &&: & является как оператором бита, так и логическим оператором. Обе стороны и могут быть Int или логические выражения. Когда обе стороны и являются int, числа с обеих сторон оператора должны быть преобразованы в двоичные числа перед выполнением операций. Две стороны короткого замыкания и (&&) должны быть логическими выражениями.
Я думаю, что многие люди встретятся с этим при изучении Java или во время интервью
&и&&
Однако, если вы не совсем понимаете, что они имеют в виду, это вызовет много проблем в вашем мышлении
В этом блоге, после того, как вы закончите читать, вы обнаружите, что их легко различить
Вот моя демонстрация
/**
*
*/
пакет com.b510.test;
/**
* @author Jone Hongten
* @create Дата: 2013-11-2
* @version 1.0
*/
открытый тест класса {
public static void main (string [] args) {
String str = null;
if (str! = null &&! "". Equals (str)) {
// что -нибудь делай
}
if (str! = null &! "". Equals (str)) {
// что -нибудь делай
}
}
}
Теперь у нас может быть какое -то размытие, поэтому давайте посмотрим на проблемы с цепи & и &&:
для:&&
if (str! = null &&! "". Equals (str))
Когда: str! = Null, будет выполнено следующее выполнение:! "". Equals (str)
If: str! = Null неверно, тогда в настоящее время программа находится в коротком замыкании, тогда! ».
Но для: &
if (str! = null &! "". Equals (str))
Независимо от результата STR!
Сводка задач схемы:
Ибо: & ->, несмотря ни на что, будет выполнена программа слева и правая сторона символа "&"
For: && -> Программа на правой стороне символа "&&" будет выполнена только в том случае, если программа на левой стороне символа "&&" true (true).
Давайте поговорим о правилах операции ниже:
Для: & -> до тех пор, пока одна из левой и правой стороны является ложной, это неверно; Только когда все это правда, результат правда
Для: && -> до тех пор, пока левая сторона символа является ложным, результат неверно; Когда левая сторона верна, а правая сторона верна, результат правда
Спасибо за чтение, я надеюсь, что это поможет вам. Спасибо за поддержку этого сайта!