java运算符问题 10

看java教材的时候看到位逻辑运算时有&位运算符“与”可看下去到逻辑运算符也有&运算符“与”那到底是位逻辑运算符还是逻辑运算符还是怎么样我都搞糊涂了... 看java教材的时候 看到位逻辑运算时有&位运算符“与”
可 看下去 到逻辑运算符 也有&运算符 “与”
那 到底 是位逻辑运算符 还是 逻辑运算符 还是怎么样 我都搞糊涂了
展开
 我来答
dyshying
2011-04-17 · 超过11用户采纳过TA的回答
知道答主
回答量:31
采纳率:0%
帮助的人:31万
展开全部
两个都是,
当&两边是整数时执行的是位运算,而两边是boolean值时执行的是逻辑运算,
如:
3&6 就是执行的位运算,结果是一个整数:2
true&false 执行的就是逻辑运算,结果是一个boolean值:false

&的逻辑运算和&&逻辑运算是存在一定不同的
&逻辑运算时两边都会计算的,而&&则在左边为假时则直接返的是false不再计算右边

举个例子:
1:
int[] a={1,2,3};
if(a[0]==2&a[3]==4){System.out.println("true")}

2:
int[] a={1,2,3};
if(a[0]==2&&a[3]==4){System.out.println("true")}

这两个例子中,第一个会抛出异常,而第二个则什么不会输出也不会抛异常
这是因为第一个例子中if语句中用的是&,所以两边的都会计算,当计算a[3]==4时抛出数组下标越界异常
第二个例子则在计算第一个式子a[0]==2发现结果为假则不再计算右边,直接返回false,所以该例子不会输出任何东西
群管理员479
2011-04-18
知道答主
回答量:21
采纳率:0%
帮助的人:30.9万
展开全部
&是位运算符 如果前面的值为false则继续执行下一个 &&是逻辑运算符 又称断运算符 即前一个为假 输出1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ly...n@163.com
2011-04-17 · TA获得超过464个赞
知道答主
回答量:115
采纳率:0%
帮助的人:56.3万
展开全部
很简单当有两个&&的时候,运算的结果只能为0或者1,也就是只能是真或者假
当有一个&的时候,就是把两边的数按位进行与运算...............
与运算相信楼主一定知道了.希望采纳!!!
追问
你说的东西我也想过 可 我总觉得没那么简单 除非是书本上误导了 我总觉得还差点什么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
旁暄玲26
2011-04-17 · TA获得超过225个赞
知道小有建树答主
回答量:345
采纳率:0%
帮助的人:273万
展开全部
&是位
&&是逻辑
位运算符用的很少的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
熊子熊子Bt
2011-04-18 · TA获得超过145个赞
知道答主
回答量:79
采纳率:100%
帮助的人:54.4万
展开全部
&& 是逻辑运算
单个 & 是位运算
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式