请关注我的博客:www.taomaipin.com

家里有急事 暂停了几天,抱歉,现在呢开始说说java的运算语句和运算符

如果想利用java的运算语句 那么就离不开java的运算符,前面第九章讲了java的算术运算符,那么现在咱们说说java的逻辑运算符。特别强调一下

我在这里说的是逻辑运算符而不是位运算符,至于什么是位运算符 我后面章节在说。

java的逻辑运算符包括与、或、非,那么咱们说说这四种逻辑运算符以及在运算语句的使用。

第一:与(&&)

先看下面代码

public class Test {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=6;
int b=7;
System.out.println((a==6)&&(b==7));

System.out.println((a==6)&&(b==8));

System.out.println((a==1)&&(b==8));

}

首先声明两个变量a和b 并且把6和7赋值给a和b 然后 打印出来的一定是true false false,与(&&)是判断的如果a 和b都为真 那么就是真,如果其

中之一为假 生成的boolea值为false

它的中文意思 你也可以这样理解且的意思 并且的意思,比如a=6&&b=7可以这样理解:a的值为6并且b的值为7或者再声明一个变量c=9;

如果代码写成这样:System.out.println((a==6)&&(b==7)&&(c==9)); 意思是a的值为6 并且b的值为7并且c的值为9满足

所有才会生成一个布尔值true,其中之一不满足就会生成一个布尔值false

第二:或(||)

先看下面代码:

public class Test {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=6;
int b=7;
System.out.println((a==6)||(b==7));
System.out.println((a==6)||(b==8));
System.out.println((a==8)||(b==7));
System.out.println((a==9)||(b==9));

}

打印结果为true true true false

或的意思是只要其中一个符合 那么生成的布尔值便为true

第三:非(!)

首先看下面代码:

public class Test {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=6;
int b=7;
System.out.println(a!=6);
System.out.println(a!=12);
System.out.println(b!=7);
System.out.println(b!=90);

}

}

打印结果是

false
true
false
true

非的意思是和实实不符比如a实际上值为6那么我说a的值不是6 我就可以用java代码说a!=6 我说错了 程序就会给返回一个false的布尔值

现在说说 位运算符

&&是短路运算符,&是非短路运算符

区别 例如 表达式A && B   如果A返回为false, 该表达式会直接返回false ,将不会再 对B做判断,而&则无论A为什么结果都会去对B进行判断。

|| 与 |的区别和上面一样,所以从效率上来讲短路运算符的效率要高于非短路运算符

网上也有人这样解释我感觉非常合适:
位运算符:

    包括:1。&位与符 2。|位或符 3。^位异或符 4。~位取反符

   以操作数12为例。位运算符将数字12视为1100。位运算符将操作数视为位而不是数值。数值

   可以是任意进制的:十进制、八进制或十六进制。位运算符则将操作数转化为二进制,并相应地返回1或0。

   位运算符将数字视为二进制值,并按位进行相应运算,运算完成后再重新转换为数字。例如:

   表达式10&15表示(1010 & 1111),它将返回表示1010的值10。因为真真得真,或者是11得1,同位全是1结果也是1

   表达式10|15表示(1010 | 1111),它将返回表示1111的值15。假假得假。全零得零。

   表达式10^15表示(1010 ^ 1111), 它将返回表示0101的值5。此时是同性相斥,相同的就为假。

   表达式~10表示(~1010),它将返回表示0101的值 -11。此号好理解,按位取反

我的博客www.taomaipin.com

java入门学习(十一)逻辑运算符和位运算符的更多相关文章

  1. java入门学习(九) 算术运算符

    请大家关注我的博客www.taomaipin.com 运算符在java基础中也占有着举足轻重的位置,我们当然要学会它.java 其实和其他计算机语言一样,基本的算术运算符基本一样,让我们看看 有哪些算 ...

  2. Java 逻辑运算符、位运算符、移位操作符 总结(Java 学习中的小记录)

    Java 逻辑运算符.位运算符.移位操作符  总结     作者:王可利(Star·星星) 逻辑运算符,表格如下: 解析逻辑运算符表: 1.与 (&) 特点:两个都为真的时候,结果为真.两个为 ...

  3. Java的算数运算符、关系运算符、逻辑运算符、位运算符

    JAVA的运算符,分为四类: 算数运算符.关系运算符.逻辑运算符.位运算符 算数运算符(9):+  -  *  /  %  ++  -- 关系运算符(6):==  !=  >  >=  & ...

  4. Java基础——逻辑运算符、位运算符

    逻辑运算符.位运算符.三元运算符 逻辑运算符  public class Demon05 {     public static void main(String[] args) {          ...

  5. Java入门学习路线目录索引

    原创 Java入门学习路线目录索引 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/One_ ...

  6. Java 基础入门随笔(3) JavaSE版——逻辑运算符、位运算符

    上一节写了一些运算符的注意事项,这节开头依然是对运算符的一些注意点的阐述! 比较运算符除了>.>=.<.<=.==.!=之外需要注意instanceof:检查是否是类的对象,例 ...

  7. java注释 命名 数据类型 基本类型转换 位运算符 逻辑运算符 三目运算符

    一.java注释 1.单行注释  //注释内容 2.多行注释 /*注释内容*/ 3.文档注释(可用javadoc工具生成api文档,不过我还没试过)/**文档注释*/,文档注释可以在使用的时候看见注释 ...

  8. Java入门学习知识点汇总

    Java入门重要知识点在这里总结一下,以方便日后复习,这部分内容主要有:变量和常量,常用的运算符,流程控制语句,数组,方法这些内容 一.变量和常量 1.Java关键字 先贴张图: 所有关键字区分大小写 ...

  9. 逻辑运算符、位运算符、三元运算符、判断语句(if,switch)

    逻辑运算符 逻辑与 &:由false则false 逻辑或 |:有true则true 逻辑异或 ^:相同为false,不同为true 逻辑非 !:非false则true,非true则false ...

随机推荐

  1. C语言 结构体的内存对齐问题与位域

    http://blog.csdn.net/xing_hao/article/details/6678048 一.内存对齐 许多计算机系统对基本类型数据在内存中存放的位置有限制,它们会要求这些数据的首地 ...

  2. 【转】深入研究java.lang.Runtime类

    一.概述      Runtime类封装了运行时的环境.每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接.      一般不能实例化一个Runtime对象, ...

  3. JavaScript定时器详解及实例

    JS里设定延时: 使用SetInterval和设定延时函数setTimeout 很类似.setTimeout 运用在延迟一段时间,再进行某项操作. setTimeout("function& ...

  4. 游戏中VIP会员模块的简单实现

    哈哈  今天周末有时间,再整理一篇博文上来,虽然已经不做游戏老长时间了,但还是要把以前做过的东西总结一下,借此可以回顾以前的东西,也可以分享给大家. 今天说一下游戏中VIP会员模块的实现思路.每款游戏 ...

  5. 锋利的JQuery-认识Jquery

    今天开始学习菜鸟的JQuery,这本书在一前看过一遍了,但是由于虽然看了,但是将近一年在工作中基本上没有用上,很是悲催,菜鸟想,用一到两个星期时间把这本书看一遍吧.就像菜鸟前面的jsdom一样,菜鸟写 ...

  6. Extension Method[下篇]

    四.Extension Method的本质 通过上面一节的介绍,我们知道了在C#中如何去定义一个Extension Method:它是定义在一个Static class中的.第一个Parameter标 ...

  7. 深入理解memcached

    网上有5篇介绍memcached的文章,写的挺好,这里转过来. memcached完全剖析–1. memcached的基础 memcached全面剖析–2.理解memcached的内存存储 memca ...

  8. poj 2151 Check the difficulty of problems(概率dp)

    poj double 就得交c++,我交G++错了一次 题目:http://poj.org/problem?id=2151 题意:ACM比赛中,共M道题,T个队,pij表示第i队解出第j题的概率 问 ...

  9. bzoj1854

    神奇了 朴素的做法不难想,二分图最大匹配(汗,我其实还是想了一会,太弱了) 左边点集为能打的属性值,右边把武器作为一个点 武器和两个属性连边, 然后和superhero那题差不多,顺次找匹配,找不到了 ...

  10. CodeForces Round #290 Div.2

    A. Fox And Snake 代码可能有点挫,但能够快速A掉就够了. #include <cstdio> int main() { //freopen("in.txt&quo ...