逻辑运算符与(&)、或(|)、非(!)、异或(^)及双与(&&)和双或(||)

来源:互联网 发布:淘宝精选是怎么回事 编辑:程序博客网 时间:2024/06/16 15:33

*************1 、与(&), 或(|),非(!),异或(^)*************
package cn.itcast.demo02;
/*
* 逻辑运算符: &, |, ^, !
* &(与): 只要有一边为fale, 那么就是false
* |(或): 只要有一边为true, 那么就是true
* ^(异或): 只要是相同的boolean值, 那么就是false, 不相同才是true
* 解释: 用来连接boolean(关系表达式)表达式,或者是boolean取值都可以, 表达式返回的结果还是一个boolean类型
*
*
* 比如你找女朋友有两个条件: 1.长得像凤姐 2.生高180cm
*/
public class Demo03LuoJi {

public static void main(String[] args) {    int a = 10;    int b = 11;     int c = 12;    // &    System.out.println((a > b) & (a < c));// false & true;    System.out.println((b < c) & (b > a));// true & true; --> true    // |    System.out.println(true | false);// true    System.out.println(false | false);// false    System.out.println(true | true);// true    // ^    System.out.println(true ^ true);// false    System.out.println(false ^ false);// false    System.out.println(true ^ false);// true    // !    System.out.println(!true);// false    System.out.println(!false);// true    System.out.println(!!false);// false     int x = 10;    int y = 20;    boolean bool = (x >= y) & (y > 15);    System.out.println(bool);// false}

}

*************2 、双与(&&)和双或(||)*************
package cn.itcast.demo02;
/*
* 逻辑运算符(双与, 双或): && ||
* 解释: 双与和双或 得到的结果 和 单与和单或 是完全一样的!
*
* 区别:
* && 和 & :
* && 一旦判断到左边是false之后, 右边就不参与运算了
* &: 不管左边是true还是false, 右边都参与运算
*
* || 和 |
* || 一旦判断左边是true之后, 右边就不参与运算了
* | 不管左边是true还是false, 右边都参与运算
*
*
* 注意: 对于只是要判断一个表达式的结果来讲, 双与, 双或的计算效率高些!
*
*/
public class Demo04LuoJi {

public static void main(String[] args) {    int a = 10;    int b = 11;     int c = 12;    // &    System.out.println((a > b) && (a < c));// false & true;--> false    System.out.println((b < c) && (b > a));// true & true; --> true    // |    System.out.println(true || false);// true    System.out.println(false || false);// false    System.out.println(true || true);// true    System.out.println("===============");    int i = 5;    int j = 6;    System.out.println((i > j) && (++j > 3));// false    System.out.println(j);// 6    System.out.println((i > j) & (++j > 3));// false    System.out.println(j);// 7    int x = 10;    int y = 11;    System.out.println((x < y) || (++y > 15));// true    System.out.println(y);// 11    System.out.println((x < y) | (++y > 15));    System.out.println(y);// 12}

}

阅读全文
0 0