07-Java-运算符

目录

1. 算术运算符

  1.1 四则运算与取模运算

  1.2 自增自减运算符

2. 赋值运算符

3. 比较运算符

4. 逻辑运算符

5. 三元运算符


1. 算术运算符

  1.1 四则运算与取模运算

  • 运算符:进行特定操作的符号。例如:+
  • 表达式:用运算符连起来的式子叫做表达式。例如:20+5。又例如:a+b
  • 四则运算:加+、 减:- 、乘:*  、除:/
  • 取模:取余数 %
public class test07 {
    public static void main(String[] args) {
        // 两个常量 +
        System.out.println(20 + 30);  //50

        // 字符串 + 表示连接
        String c = "java";
        System.out.println(c + 8); //java8

        // 两个变量 -
        int a = 5;
        int b = 6;
        System.out.println(a - b);  //-1

        // 乘法  *
        System.out.println(a * 10);  //50

        // 除法  /
        int x = 10;
        int y = 3;
        int res = x / y;
        System.out.println(res); //3

        // 取模(余数)  %
        int res2 = x % y;
        System.out.println(res2); //1

        // 数据类型不一样,结果是数据范围大的类型
        double res3 = x + 2.5;
        System.out.println(res3); //12.5
    }
}

  1.2 自增自减运算符

  • 自增运算符:++
  • 自减运算符:--
  • 含义:让一个变量加1或减1

     使用区别

  • 在单独使用的时候,前++/--和后++/--没有任何区别。也就是:++num/--num;和num++/num--;是完全一样的
  • 在混合的时候,有【重大区别】:

    A.如果是【前++】/【前--】,那么变量【立刻马上+1】/【立刻马上-1】,然后拿着结果进行使用。【先加/减后用】

    B.如果是【后++】/【后--】,那么首先使用变量本来的数值,【然后再让变量+1】/【然后再让变-1】。【先用后加/减】

  • 注意:只有变量才能使用自增自减运算,常量不可变,所以不能使用

import org.apache.tools.ant.util.ResourceUtils;

public class test08 {
    public static void main(String[] args) {
        // 单独使用  ++num 和 num++ 无区别
        int a = 27;
        a++;
        System.out.println(a);  //28
        ++a;
        System.out.println(a);  //29


        // 混合使用
        int b = 27;
        // ++num  先加后用
        System.out.println(++b); //28

        // num++  先用后加
        int d = 27;
        System.out.println(d++); //27
        System.out.println(d);  //28


        // 单独使用
        int e = 66;
        --e;
        System.out.println(e); //65
        e--;
        System.out.println(e); //64

        // 混合使用
        int f = 88;
        // --num 先减后用
        System.out.println(--f); //87

        // num-- 先用后减
        int g = 33;
        System.out.println(g--); //33
        System.out.println(g); //32


        int x = 10;
        int y = 20;
        int res = ++x + y--;
        // x 先加后用,y 先用后减
        System.out.println(res);  //31
        System.out.println(x); // 11
        System.out.println(y); // 19

        // 常量不可以使用自增、自减运算
//        27++;
//        --27;
    }
}

2. 赋值运算符

  • 基本赋值运算符:等号(=),代表把右侧的数据交给左侧的变量
  • 复合赋值运算符:+=、-=、*=、/=、%=
public class test09 {
    public static void main(String[] args) {
        // +=  a+=5 -->  a = a+5
        int a = 1;
        a += 5;
        System.out.println(a); //6

        // %=  b%=3 --> b = b%3
        int b = 10;
        b %= 3;
        System.out.println(b); //1

    }
}

3. 比较运算符

  • 运算符:大于>、小于<、大于等于>=、小于等于<=、相等==、不相等!=
/**
 * @Time: 2021/1/30
 * @Author: 大海
 **/
public class test10 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        System.out.println(a < b);
        System.out.println(a > b);
        System.out.println(a >= 10);
        System.out.println(b <= 10);

        System.out.println(10 == 10);
        System.out.println(a != b);

    }

}

4. 逻辑运算符

  • 与(并且)&& :全都是true,才是true;否则就是false
  • 或(或者)||:至少一个是true,就是true;全都是false,才是false
  • 非(取反)!:本来是true,变成false;本来是false,变成true
  • 注:&& 和 ||  具有短路功能,如果根据左边已经可以判断得到最终结果,那么右边的代码将不再执行,从而节省一定的性能。
/**
 @Time: 2021/1/30
 @Author: 大海
 **/
public class test11 {
    public static void main(String[] args) {
        //&&
        System.out.println(true && true);
        System.out.println(true && false);
        System.out.println(3<4 && 5>4);

        //||
        System.out.println(true || false);
        System.out.println(false || false);
        System.out.println(false || true);


        // !
        System.out.println(!true);
        System.out.println(!false);

        // 短路效果
        int a = 10;
        System.out.println(3 > 4 && ++a < 20);
        System.out.println(a);  // 10

        int b = 30;
        System.out.println(3 < 4 || ++b > 20);
        System.out.println(b); // 30


    }
}

5. 三元运算符

  • 定义:需要三个数据才可以进行操作的运算符。
  • 格式:数据类型变量名称=条件判断?表达式A:表达式B;
  • 注意:同时保证表达式A和B都符合左侧数据类型
/**
 * @Time: 2021/1/30
 * @Author: 大海
 **/
public class test12 {
    public static void main(String[] args) {
        //首先判断条件是否成立:
        //如果成立为true,那么将表达式A的值赋值给左侧的变量;如果不成立为false,那么将表达式B的值赋值给左侧的变量
        int a = 10;
        int b = 20;
        int max = a > b ? a : b;
        System.out.println(max); // 20
    }

}

 

 

你可能感兴趣的:(Java学习,java)