zoukankan      html  css  js  c++  java
  • Java基础-逻辑运算符Logic Operators

                  Java基础-逻辑运算符Logic Operators

                                    作者:尹正杰

    版权声明:原创作品,谢绝转载!否则将追究法律责任。

     一.逻辑运算符

      逻辑运算符是对布尔值进行操作运算的,常见的有:

        1>.逻辑与(&);

        2>.逻辑或(|);

        3>.逻辑异或(^);

        4>.逻辑非(!);

        5>.短路与(&&);

        6>.短路或(||);

       总结规律如下:

        1>."&":只有两个操作数都是true,结果才是true,其余都是false;
        2>."|":只要有一个操作数是true,结果就是true,其余都是false;
        3>."!":取反,true变false,false变true;
        4>.单操作数的只有一个;
        5>.异或的含义:求异,只有两个操作数不同,整个表达式才为true;

    二.案例展示

    1>.逻辑运算符的操作数与布尔值

     1 /*
     2 @author :yinzhengjie
     3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
     4 EMAIL:y1053419035@qq.com
     5 */
     6 
     7 public class LogicDome{
     8     public static void main(String[] args){
     9         
    10         //逻辑运算符的操作数与布尔值
    11         System.out.println( true & true );                //true
    12         System.out.println( false | true );            //true
    13         System.out.println( true ^ false );            //true
    14         System.out.println( true ^ true );                //false
    15         System.out.println( !true );                    //false
    16         System.out.println( !false );                    //true
    17         
    18     }
    19 }

    2>.短路与&&,操作结果与逻辑&一样(推荐使用)

     1 /*
     2 @author :yinzhengjie
     3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
     4 EMAIL:y1053419035@qq.com
     5 */
     6 
     7 public class LogicDome2{
     8     public static void main(String[] args){
     9         
    10         //短路与&&,操作结果与逻辑&一样
    11         int num = 2018;
    12         System.out.println( (num < 0) & ( ++num > 0) );        //false
    13         System.out.println( num );                                //2019
    14         
    15         //短路与&&,如果左侧表达式为false,不计算右侧表达式的值了
    16         num = 18;
    17         System.out.println( (num < 0) && ( ++num > 0) );        //false
    18         System.out.println( num );                                //18
    19     }
    20 }

    3>.短路或||,如果左侧为true,不计算右侧表达式的值了(推荐使用)

     1 /*
     2 @author :yinzhengjie
     3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
     4 EMAIL:y1053419035@qq.com
     5 */
     6 
     7 public class LogicDome3{
     8     public static void main(String[] args){
     9         
    10         //短路与||,如果左侧为true,不计算右侧表达式的值了
    11         int num = 2018;
    12         System.out.println( (num > 0) || ( ++num > 0) );        //false
    13         System.out.println( num );                                //2018
    14         
    15     }
    16 }

    4>.逻辑运算符经常用于链接多个布尔表达式

     1 /*
     2 @author :yinzhengjie
     3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
     4 EMAIL:y1053419035@qq.com
     5 */
     6 
     7 public class LogicDome4{
     8     public static void main(String[] args){
     9         
    10         //逻辑运算符经常用于链接多个布尔表达式
    11         int year = 2018;    
    12 
    13         /**
    14         判断某一年是否为闰年:
    15             能被4整除但是不能被100整除                    ||     直接能被400整除
    16             (能被4整除 && 不能被100整除)             ||     直接能被400整除
    17             (year%4==0 &&  year%100!=0)    ||    year%400==0;
    18         */
    19         
    20         boolean isPrime = (year%4==0 &&  year%100!=0)    ||    year%400==0;        //false
    21     
    22         System.out.println( isPrime);
    23         
    24     }
    25 }
  • 相关阅读:
    读<<关于程序员的技能>> 惭愧,希望有人能进来解惑! 人工智能
    我也来说说多核 人工智能
    有感于.net社区挺唐骏的作假的文章,诚实是美德,你们可以做假发财成功,但请不要批评,嘲笑他人诚实贫穷 人工智能
    几个程序员也难已回答的问题 人工智能
    Flash已死,有事烧纸! 人工智能
    关于Windows7的用户体验,我们是属于跟不上时代的古董,还是那个敢说出皇帝新衣的男孩? 人工智能
    企鹅帝国的疯狂反扑! 人工智能
    微软IE9预览版全面(100%)支持HTML5和CSS3,到学习使用Html5的时候了 人工智能
    Flash已死终成现实,Adobe亲手埋葬Flash,并公开支持Html5 人工智能
    4个月,你就是企业需要的程序员人才,听蒋涛(CSDN)在线说“黑马” 人工智能
  • 原文地址:https://www.cnblogs.com/yinzhengjie/p/8688081.html
Copyright © 2011-2022 走看看