运算符 &和&&、|和||的区别吗?
& 按位与操作
只有对应的两个二进制数为1,结果位才为1
1 & 1 = 1
1 & 0 = 0
0 & 1 = 0
0 & 0 = 0
| 按位或操作
只要有一个为1,结果位就为1
1 | 1 = 1
1 | 0 = 1
0 | 1 = 1
0 | 0 = 0
& 和 && 都可以实现 和 的功能
区别:& 两边都是要运算的,&& 先算左边,若左边为false,那么右边就不运算,判断语句中推荐使用&&,效率高。
| 和 || 和上面类似
区别: || 只要满足第一个条件,后面的条件就不再判断,而|要对所有的条件进行判断
&& 和 || 成为短路运算符
用最有效的方法计算2乘以8
答案:2 << 3
原理:将一个数作揖n位,相当于乘以2的n次方幂,位运算是CPU直接支持的,所以效率高。
java数据类型分类
数据类型分为基础数据类型和引用数据类型
基础数据类型:byte short long int float double char boolean
引用数据类型:其他都是引用数据类型
String 和Enum都是引用类型
==和equals的区别
基本数据类型比较用==判断是否相等
引用数据类型:==比较内存地址是否一样,不同对象的内存地址不一样,equals比较的是具体的内容。
网友评论