逻辑运算符/三元运算符/Scanner

逻辑运算符

&(并且) , |(或者) , !(非) , ^(异或) , &&(短路与) , ||(短路或)

注意事项:

a:逻辑运算符一般用于连接boolean类型的表达式或者值。
在Java中我们要表示一个数大于3并且小于6 ,不可以写成3<x<6,应该写成 x>3 & x<6 。
b:表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子。
算术表达式:a + b
关系表达式:a == b

结论

&逻辑与:有false则false。
|逻辑或:有true则true。
^逻辑异或:相同为false,不同为true。 举例:情侣关系。男男,男女,女男,女女
!逻辑非:非false则true,非true则false。 特点:偶数个不改变本身。

&和&&的区别

它们两个运算的最终结果没有任何区别,区别在于运算效率上

&:它的两端都会运算。

&&:左端为false,右端就不运算,当你的左端为true了右端,还必须运算。

三元(三目)运算符

(关系表达式) ? 结果1 : 结果2;

看关系表达式的结果是true,返回结果1;

结果如果是false,返回结果2;

案例演示:

public class MyTest {
    public static void main(String[] args) {
        int a=(10>20)?30:50;
        System.out.println(a);
    }
}
//a=50   结果是false 返回结果是结果2 所以是50

获取三个数的最大值:两两比较

public class MyTest {
    public static void main(String[] args) {
        int a=10;
        int b=20;
        int c=30;
        int max1=a>b?a:b;
        int max2=max1>c?max1:c;
        //两两比较确定a和b的最大值后再和c比较
        System.out.println(max2);

    }
}

Scanner

可以从键盘录入数据

  1. 导入包
  2. 创建该类对象
  3. 写个提示语句
  4. 获取用户从键盘上输入的数据
import java.util.Scanner;//第一步

public class MyTest {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);//第二步
        System.out.println("请输入");//第三步
        scanner.nextLine();//第四步
        //Scanner方法里有很多方法,具体方法可以查API文档确定你想要用户输入的数据类型

    }
}

案例演示:键盘录入三个数据,获取这三个数据中的最大值

import java.util.Scanner;

public class MyTest {
    public static void main(String[] args) {
        Scanner sc1 = new Scanner(System.in);
        System.out.println("请输入一个值");
        int a = sc1.nextInt();
        Scanner sc2 = new Scanner(System.in);
        System.out.println("请输入一个值");
        int b = sc2.nextInt();
        Scanner sc3 = new Scanner(System.in);
        System.out.println("请输入一个值");
        int c = sc3.nextInt();
        //三元运算符
        int max1 = a > b ? a : b;
        int max2 = max1 > c ? max1 : c;
        System.out.println("三个数的最大值是"+max2);
    }
}

posted @ 2019-11-27 14:49  Godlesss  阅读(379)  评论(0编辑  收藏  举报