-----------siwuxie095
逻辑运算是在关系运算基础之上的运算,能处理更加复杂的问题
逻辑运算的结果是 true 或 false
逻辑运算的种类:
1、逻辑与运算:
(1)长路与运算
长路与运算的运算符号:&
& 的两边都是整数时,是逐位与运算(二进制);& 的两边是关系运算时,是逻辑与运算
长路与运算会把两边的关系运算结果都计算出来
如:
(2)短路与运算
短路与运算的运算符号:&&
当运算符左边的关系运算结果是 false 时,不再对右边的关系运算
进行计算(这种计算特点能提高程序效率,且是安全的)
如:
2、逻辑或运算:
(1)长路或运算
长路或运算的运算符:|
| 的两边都是整数时,是逐位或运算(二进制);| 的两边是关系运算时,是逻辑或运算
长路或运算会将两边的关系运算结果都计算出来
如:
(2)短路或运算
短路或运算的运算符:||
当运算符号左边的关系运算结果是true时,不再进行右边的关系运算,
直接得出true的结果(同样能提高运算效率)
如:
3、逻辑非运算:
如:
4、逻辑运算优先级:
如:(注意:关系运算的优先级要高于所有的逻辑运算)
程序应用:键盘输入一个5分制分数,判断该数是否为5分制分数
代码:
package com.siwuxie095.test;
import java.util.Scanner;
public class Test18 {
public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.println("请输入5分制分数:"); int score=scanner.nextInt(); //与运算 boolean isFiveScore=score>=0&&score<=5; //非运算 //boolean isFiveScore=!(score<0||score>5); System.out.println(score+"是5分制的分数:"+isFiveScore); //或运算 //boolean isNotFiveScore=score<0||score>5; //System.out.println(score+"不是5分制的分数:"+isNotFiveScore); }
} |
Eclipse中:
运行一览:
【made by siwuxie095】