JAVA常见问题
来源:互联网 发布:指纹考勤机数据统计 编辑:程序博客网 时间:2024/04/27 22:16
1、&与&&的区别?
&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,例如,对于if(str != null &&!str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException如果将&&改为&,则会抛出NullPointerException异常。If(x==33 &++y>0) y会增长,If(x==33 && ++y>0)不会增长&还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作,我们通常使用0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位,例如,0x31 & 0x0f的结果为0x01。
2、switch语句能否作用在byte上,能否作用在long上,能否作用在String上?
在switch(expr1)中,expr1只能是一个整数表达式或者枚举常量(更大字体),整数表达式可以是int基本类型或Integer包装类型,由于,byte,short,char都可以隐含转换为int,所以,这些类型以及这些类型的包装类型也是可以的。显然,long和String类型都不符合switch的语法规定,并且不能被隐式转换成int类型,所以,它们不能作用于swtich语句中。
3、用最有效率的方法算出2乘以8等於几?
2 << 3,因为将一个数左移n位,就相当于乘以了2的n次方,那么,一个数乘以8只要将其左移3位即可,而位运算cpu直接支持的,效率最高,所以,2乘以8等於几的最效率的方法是2 <<3。
- java常见问题
- JAVA 常见问题
- Java常见问题
- java常见问题
- Java常见问题
- Java常见问题
- java 常见问题
- Java常见问题
- Java常见问题
- java常见问题
- java常见问题
- JAVA常见问题
- java 常见问题
- java 常见问题
- JAVA常见问题
- Java常见问题
- java常见问题
- java常见问题
- json格式序列化注意点
- linux设备模型深探
- 网络编程之 Socket函数 (一)
- 刘恺威搂老婆闺蜜亲密跳舞 唐嫣尴尬频NG
- 吴莫愁疑公布恋情 网友猜测其另一半为庾澄庆
- JAVA常见问题
- UML九种图之实现图(二)
- 2007偶数的平方和和奇数的立方和
- [Qt] 循序容器(QVector、QLinkedList、QList...)
- 一个很纠结的问题
- 设计模式六大原则
- Android关于OnTouch 和OnClick同时调用冲突的解决方案
- Mac下安装MySQLdb过程及问题
- 我的android(第一天)