zoukankan      html  css  js  c++  java
  • Java学习笔记(二)

      本篇概述 ==> 操作符

                 ==> 算数操作符

            ==> 关系操作符

            ==> 逻辑操作符

            ==> 位操作符

            ==> 赋值操作符

            ==> 三元操作符

            ==> Scanner (输入)

    一,算数操作符

      基础就不写了,和某些语言大同小异,无非是 + - * / %(取余)++ -- 

      这里弄个小练习,算是对算法操作符过关了,就是计算下列式子中 j 的结果

    1 int i = 1;
    2 int j = ++i + i++ + ++i + ++i + i++;

       答案(先算出来再看哦)

    1 // 从右向左
    2 //  i=2  i=3   i=4  i=5  i=6
    3 //   +1   + 3   +4   +4   +6  == 18
    4 System.out.println(j);
    5 // result ==> 18
    View Code

    二,关系操作符

     无非是 >、>=、 <、 <=、 ==、 != ,这些,一个例子说明问题.jpg

     1 Scanner scanner = new Scanner(System.in);
     2 System.out.println("第一个整数:");
     3 int a = scanner.nextInt();
     4 System.out.println("第二个整数:");
     5 int b = scanner.nextInt();
     6 System.out.println("比较 a > b:" + (a>b));
     7 System.out.println("比较 a >= b:" + (a>=b));
     8 System.out.println("比较 a < b:" + (a<b));
     9 System.out.println("比较 a <= b:" + (a>b));
    10 System.out.println("比较 a == b:" + (a==b));
    11 System.out.println("比较 a != b:" + (a!=b));

     Result 

    第一个整数:
    10
    第二个整数:
    20
    比较 a > b:false
    比较 a >= b:false
    比较 a < b:true
    比较 a <= b:false
    比较 a == b:false
    比较 a != b:true
    View Code

    三,逻辑操作符

     大体和 C++, JavaScript等语言无多少区别,但是将 或 和 与 区分成了 长路短路,另外新增了 异或

      3.1长路与 和 短路与

       区别

       长路与 & 两侧 都会被运算

     表达式1  表达式2 运算结果
    true  true  true
    true false false
    false true false
    false false false

       短路与 && 只要第一个是 false, 第二个就不进行运算了                 

       3.2  长路或 与 短路 或

       区别

       长路或 | 两侧都会被运算

     表达式1  表达式2 运算结果
    true  true  true
    true false true
    false true true
    false false false

       短路或 || 只要第一个是 true,第二个就不会进行运算了

        3.3 取反 (顾名思义 !)

      3.4 异或 ^

        不同,返回真

        相同,返回假

       异或^

    1         int i = 1;
    2         boolean b = !(i++ ==3)^(i++ == 2) && (i++ ==3);
    3         // false
          // 从右向左 (false && true) ^ true ==> false

    四,位操作符(略,用到时查阅即可)

    五,赋值操作符

      大体上和 JavaScript 中的类似

      赋值操作的操作顺序是从右到左

     例如 +=、-=、*=、/=、%=、&=、|=、^=、>>=、>>>= 等同于

     i = i + 2

     i = i - 2

       ....

       i = i >>>2

    六,三元运算符(语法 JavaScript,Python,C++ 共通)

     表达式?值1:值2

      如果表达式为真,返回值1

     如果表达式为假,返回值2

      例:输入一个整数,判断是工作日,还是周末

    1         Scanner scanner = new Scanner(System.in);
    2         System.out.println("请输入一个整数:");
    3         int day = scanner.nextInt();
    4         String p =  (1<=day & day<=7?( day<=5? "工作日":"周末"):"错误");
    View Code

    七,Scanner输入

     首先,需要导入 Scanner

    1 import java.util.Scanner;

     然后在其内先创建

    Scanner scanner = new Scanner(System.in);

     其次就可以进行 读取整数,浮点数以及字符串,先读取整数再接着读取字符串了

    1 Scanner scanner = new Scanner(System.in);
    2 System.out.println("请输入一个整数:");
    3 int i = scanner.nextInt();
    4 System.out.println("请输入一个浮点数");
    5 float f = scanner.nextFloat();
    6 System.out.println("请输入一个字符串");
    7 String rn = scanner.nextLine();  // 用于取走回车换行符号
    8 String s = scanner.nextLine();  // 读取字符串

     

    d

  • 相关阅读:
    tomcat使用不同的jdk版本 liunx 装两个jdk
    接下来自己的研究对象
    钉钉小程序开发的所有坑
    java 在web应用中获取本地目录和服务器上的目录不一致的问题
    Python2.7更新pip:UnicodeDecodeError: 'ascii' codec can't decode byte 0xb7 in position 7: ordinal not in range(128)
    vue项目中禁止移动端双击放大,双手拉大放大的方法
    JZ56 删除链表中重复的结点
    JZ55 链表中环的入口结点
    JZ54 字符流中第一个不重复的字符
    JZ53 表示数值的字符串
  • 原文地址:https://www.cnblogs.com/xmdykf/p/11388882.html
Copyright © 2011-2022 走看看