N多的网站都会有这样的帖子:Java面试题(http://www.ffboy.com/Article/cxsj/java/200507/4285.html),其中就有这个问题。给出的答案也都是一致的:&是位运算符。&&是布尔逻辑运算符。其实这只并不完全正确,&既是位运算符也是逻辑运算符,&&只是逻辑运算符,&与&&同时作为逻辑运算符时&&是短路的,而&并不短路。
解决方案 »
- 关于printwriter不同的构造方法问题
- 在做数据输入输出流的实验时,怎样调用循环和中断键盘输入操作?
- 急!在JSP文件中,怎么能向一个文本文件追加内容?
- JAVA初学第一问:怎么总提示找不到"sun.JDBC.odbc.JdbcOdbcDriver"呢??
- 字符串如何轉換為日期型
- TreeMap和HashMap的区别
- 请问用Java如何读取.bmp文件??请高手指点,谢谢
- 有没有获取字符的unicode二进制的函数?如:'国',取得1111000011110000
- 做一次好人!《java2参考大全(第4)》下载!
- Java中坐标的问题,public void paint(Graphics g)中g的坐标是这么回事?
- jar -jar xxxxxx.jar,我怎么知道运行的是xxxxxx.jar文件里面的哪个类?
- JTable中单元格焦点的移动,请大侠们帮忙
if((10/2) &&(10/0) )
{
System.Out.println("true");
}
else
{
System.out.println("false");
}
是没有错的.而且只输出"false"
如果把 && 改成 & .就会抛出一个异常
JAVA中, 数字是不能参与逻辑运算的, 也不能做if等的条件.总之, 在JAVA中, 只有逻辑运算符才有"短路"功能.&应该和|,^,~这几个划为一类, 都是位运算符, 怎么可能是逻辑运算符?
只不过它们也可以对boolean进行运算罢了.
if((10/2) &&(10/0))
^
エラー 1 個
{
public static void main(String[] args)
{
if((10/2)&(10/0) )
{
System.out.println("true");
}
else
{
System.out.println("false");
}
}
}
报错:Op.java:5: 互換性のない型
検出値 : int
期待値 : boolean
if((10/2)&(10/0) )
^
エラー 1 個class Op
{
public static void main(String[] args)
{
if((10/2)&&(10/0) )
{
System.out.println("true");
}
else
{
System.out.println("false");
}
}
}Op.java:5:演算子 && は int,int に適用できません。
if((10/2) &&(10/0))
^
エラー 1 個