关于 if 中的判断
2010-10-15 22:58
169 查看
最近记忆力有点不好,以前看过的东西老是会忘。
今天看到一个小面试题,竟然又想不起来了。故此记下。
public class Test {
public static void main(String[] args){
int k=0;
int j=0;
int w=0;
for(int i=0;i<5;i++){
if(++k>2&&j++>2&&++w>2){
k++;
++j;
++w;
}
}
System.out.println("k="+k+" "+"j="+j+" "+"w="+w);
}
}
本题的考点在于 if 中&&的短路运算
即若&&之前的运算为假,则后面的运算不进行。
i=0,小于5
k=1不大于2,后面的不算,i=1,小于5
k=2不大于2,后面的不算,i=2,小于5
k=3大于2,则j不大于2,j=1,i=3,小于5
k=4大于2,则j不大于2,j=2,i=4,小于5
k=5大于2,则j不大于2,j=3,i=5,等于5
退出for
算是对++的一次复习吧。
今天看到一个小面试题,竟然又想不起来了。故此记下。
public class Test {
public static void main(String[] args){
int k=0;
int j=0;
int w=0;
for(int i=0;i<5;i++){
if(++k>2&&j++>2&&++w>2){
k++;
++j;
++w;
}
}
System.out.println("k="+k+" "+"j="+j+" "+"w="+w);
}
}
本题的考点在于 if 中&&的短路运算
即若&&之前的运算为假,则后面的运算不进行。
i=0,小于5
k=1不大于2,后面的不算,i=1,小于5
k=2不大于2,后面的不算,i=2,小于5
k=3大于2,则j不大于2,j=1,i=3,小于5
k=4大于2,则j不大于2,j=2,i=4,小于5
k=5大于2,则j不大于2,j=3,i=5,等于5
退出for
算是对++的一次复习吧。
相关文章推荐
- 关于<c:if>标签判断空值
- 关于如何判断if语句中是true还是false的简单方式
- 关于不用if,switch,?:语句判断两个数大小及其他
- 关于使用SPI来减少项目中的if else判断
- 关于不用if,switch,?:语句判断两个数大小及其他
- underscore.js中关于if (obj.length === +obj.length)判断
- 关于shell命令中嵌入if判断
- 关于IF判断的问题(一个有趣的事情)(分支-08. 高速公路超速处罚(15))
- 关于Linux shell脚本中的 if判断“不起作用”的问题
- 【MySQL学习笔记(十)】:关于条件判断if语句
- 关于javascrpt if快速判断说明
- 关于mybatis 传入基本参数类型使用if test 判断出错的问题
- 关于jsp html标签的判断问题 if else 功能
- 关于if 判断等于0 和‘0’的问题
- asp.net 关于==?:和if()else()条件判断等效例子
- 2.关于python的if判断,循环总结。
- 关于<c:if >判断 char 类型
- 关于jsp的if - else判断
- ThinkPHP关于模板的一些嵌套、IF判断使用
- iOS开发小结 - 关于swift中#if DEBUG判断不执行的解决方案