在java中&和&&都属于逻辑运算符,都是判断两边条件为真时为真,否则则为假。

在程序中:

         int i = 1;
if ((i++ > 1) & (i++ > 3)) {
System.out.println("啦啦啦");
} else {
System.out.println("噢噢噢");
}
System.out.println(i);

运行结果:

 噢噢噢
3

& 逻辑运算符实际上会把前后两个判断条件都执行一次,也就是 i 自身加两次 出现结果为 3 。

         int i = 1;
if ((i++ > 1) && (i++ > 3)) {
System.out.println("啦啦啦");
} else {
System.out.println("噢噢噢");
}
System.out.println(i);

运行结果:

 噢噢噢
2

&& 逻辑运算符实际上只判断了前边一个条件为假时,得出判断为false,出现结果为:2

区别:

&& 会出现短路,通过第一个表达判断整个表达式的结果,后面的表达式将不会运算。

&不会出现短路,将整个表达式都进行运算,&既可操作 boolean 数据还可以操作 数

Java 中 && 和 & 的区别的更多相关文章

  1. Java中equal和==区别及String创建过程

    Java中equal和==区别 1.起因 在一段Java代码中,使用了两种实现方式. //第一种命令行输入 int main (String[] args) { if(args[0] == " ...

  2. Java 中>>和>>>的区别

    Java 中>>和>>>的区别 Java中的位运算符: >>表示右移,如果该数为正,则高位补0,若为负数,则高位补1: >>>表示无符号右移 ...

  3. .NET和JAVA中BYTE的区别以及JAVA中“DES/CBC/PKCS5PADDING” 加密解密在.NET中的实现

    场景:java 作为客户端调用已有的一个.net写的server的webservice,输入string,返回字节数组. 问题:返回的值不是自己想要的,跟.net客户端直接调用总是有差距 分析:平台不 ...

  4. 浅谈java中"&&"和"&"的区别

    “&&”和”&”都是java中的逻辑运算符,并且它们都表示“逻辑与”即“同真则真,有一假则假”,它们的区别在于”&&”具有短路功能,即如果左边是false,则右 ...

  5. Java中的堆栈区别

    在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配. 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配 ...

  6. Java中&&和&的区别

    Java中&&和&都是表示与的逻辑运算符,都表示逻辑运输符and,当两边的表达式都为true的时候,整个运算结果才为true,否则为false. &&的短路功能 ...

  7. java中 == 与 equal区别 转

    java中的数据类型,可分为两类:1.基本数据类型,也称原始数据类型.byte,short,char,int,long,float,double,boolean   他们之间的比较,应用双等号(==) ...

  8. C#与java中的集合区别

    集合一般的操作       插入: add       删除: remove       查找: contains,remove java中的集合 注意哪些是接口,哪些是实现类 使用集合的时候 1. ...

  9. java中‘\'和'/'的区别

    斜杠“/”表示地址路径的下一级目录:反斜杠“\”表示转义字符,例如:要做制表,可以输入:\t:做换行:\n等.如果要输出反斜杠“\”也需要用转义字符:“\\”    在java中后台给前台传的时候如果 ...

随机推荐

  1. Centos7源码安装Apache和PHP

    源码安装Apache 安装需要的依赖 yum -y install gcc autoconf automake make pcre pcre-devel openssl openssl-devel​# ...

  2. rtsp学习参考资料1

    转载于:http://itindex.net/detail/51966-%E6%B5%B7%E5%BA%B7-rtsp-%E5%AE%A2%E6%88%B7%E7%AB%AF 海康相机RTSP连接代码 ...

  3. 万能数据库的使用【DbVisualizer软件,连接不同类型的数据库】

    1.打开指定的软件[万能连接数据库的软件],如图所示: 2.双击“此软件”,然后会显示出该软件的主页面,如图所示: 3.点击"任一个图标",会出现如下图所示的一个弹框,意思是:创建 ...

  4. LeetCode面试常见100题( TOP 100 Liked Questions)

    LeetCode面试常见100题( TOP 100 Liked Questions) 置顶 2018年07月16日 11:25:22 lanyu_01 阅读数 9704更多 分类专栏: 面试编程题真题 ...

  5. RHEL8配置本地yum源

    在RHEL8中把软件源分成了两部分一个是BaseOS,一个是AppStream. 在Red Hat Enterprise Linux 8.0中,统一的ISO自动加载BaseOS和AppStream安装 ...

  6. spring 的工厂类

    spring 的工厂类 1. 工厂类 BeanFactory 和 ApplicationContext 的区别. ApplicationContext 是 BeanFactory 的子接口,提供了比父 ...

  7. C#实现鼠标滚筒缩放界面的效果

    elementCanvas继承UserControl 声明属性: #region 缩放属性添加 float ratio = 1.0f; public float Ratio { set { ratio ...

  8. Centos7:Redis的安装,配置及使用

    安装依赖与环境 yum install gcc-c++ 解压缩redis 编译,进入redis源码目录 make 安装 make install PREFIX=/usr/local/redis 注:P ...

  9. es6函数扩展(+ ...扩展运算符)

    1.参数默认值 function foo(param = 'nihao'){ console.log(param); } foo('hello kitty'); 2.参数解构赋值 function f ...

  10. Windows命令行命令总结

    转载地址:https://www.cnblogs.com/accumulater/p/7110811.html   1. gpedit.msc-----组策略 2. sndrec32-------录音 ...