在Java中,&和&&都可以当做boolean返回值的条件判断语句,表示与。当等式两边都成立时,才可以返回true,否则返回false。
区别:1、&&实质上是一种短路判断语句,当前面的条件不成立时,直接返回false,而不考虑后面的条件。&则是从前往后都运算一遍,当所有条件中有任何一个不成立时,才会返回false。应用在条件判断语句时,&&显然效率更高。
2、&可以作为按位与的运算符,将整数转换成2进制,按位对齐后,将每一位数进行与操作,只有两位数都为1时,才返回1。如:00001111和00000011,&运算返回值为00000011(后两位都为1)。