| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 500 人关注过本帖
标题:一个小题目大家看看
只看楼主 加入收藏
lgdcky
Rank: 2
等 级:论坛游民
威 望:5
帖 子:576
专家分:18
注 册:2006-8-5
结帖率:33.33%
收藏
 问题点数:0 回复次数:3 
一个小题目大家看看

public class Untitled1 {
private static int j = 0;

private static boolean methodB(int k)
{
j=+k;
return true;
}

private static void methodA(int i)
{
boolean b;
b = i<10||methodB(8);
b = i<10|methodB(4);
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
methodA(0);
System.out.println(j);
}
}

看看打印出来是几!

2007-02-09 00:35
shylock424
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2007-1-5
收藏
得分:0 

对于楼主的这道题目我实在是不知道想要表达什么意思
不过仔细看了之后 是不是想考考我们对逻辑运算符与位运算符使用的区别啊?
只能看到这个问题:
b = i<10||methodB(8);//这个用的是逻辑运算符,会导致“短路”;
b = i<10|methodB(4);//这个用的是位运算符,不会导致“短路”;
因为
methodA(0)传入的i在(i<10)中是false所以对于||运算来说是短路的,所以后面的methodB(8)并不会执行
而在下一句中因为是|运算 ,并不会短路,所以接着的methodB(4)会执行
所以输出结果是:4
开始看了半天没注意到||和|
估计楼主是来考我们眼力的吧


路遥知马力?日久见人心
2007-02-12 00:21
qsrock
Rank: 1
等 级:新手上路
帖 子:255
专家分:0
注 册:2005-12-29
收藏
得分:0 
这题好象是考SCJP的题!~~
在TK中很多!~
楼上的说得很正确!~
2007-02-12 00:34
lgdcky
Rank: 2
等 级:论坛游民
威 望:5
帖 子:576
专家分:18
注 册:2006-8-5
收藏
得分:0 
晕这么多天了这贴还没有沉下去!

2007-02-12 20:58
快速回复:一个小题目大家看看
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.041378 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved