java零基础2--五大运算符详解

文章目录

  • 运算符概述
    • 1.算术运算符
    • 2.关系运算符
    • 3.逻辑运算符
    • 4.赋值运算符
    • 5.三目运算符

运算符概述

1.算术运算符

+:求和
-:相减
*:乘积
/:商
%:求余数
++:自加1
–:自减1

其中,我们要重点关注一下自加和自减,这里以自加为例,自减类似。
1.++可以出现在变量前也可以在变量后
2.当++出现在变量前,先自加一再赋值,当++出现在变量后,会先进行赋值运算,再加一。

 //++出现在变量后
        int m =10;
		int n =m++;
        System.out.println(m);//11
        System.out.println(n);//10,n=m++可以拆成n=m;和m++;这两行
        //++出现在变量前
        int x=100;
		int y=++x;
		System.out.println(x);//101
		System.out.println(y);//101
		
        //小题目,判断下列输出结果
        int d=100;
		System.out.println(d++);
		//结果是100,代码可以拆解为
		//int temp=d++
		//System.out.println(temp);

2.关系运算符

> ,> =,<=,==,!=(不等于)

关系运算符非常容易理解,左右两边加上要比较的变量即可,注意所有的返回值都是布尔类型(true和false)!

        int a =10;
		int b =10;
		System.out.println(a>b);//false
		System.out.println(a<b);//false
		System.out.println(a<=b);//true
		System.out.println(a>=b);//true
		System.out.println(a==b);//true
		System.out.println(a!=b);//false

3.逻辑运算符

&:与,有一边是false结果就是false
|:或,有一边是true结果就是true
!:非,true变false,false变true
&&:短路与,和&的区别:结果完全相同,无区别,只是短路与会有短路现象
||:短路或,和短路与一样,会有短路现象

注:逻辑运算符两端都是布尔型,结果也是布尔型
下面我们通过例子来了解上文中所说的短路现象

        int x = 10;
		int y = 11;
		//逻辑与两边都为真,结果是真
		//前面为假,所以不需要执行后面了
		//从结果可以看出,下面代码都执行了
		System.out.println(x>y&x>y++);//false
		System.out.println(y);//12

		//左边表达式为假,右边不执行,为短路现象
		int m = 10;
		int n = 11;
		System.out.println(m>n&&m>n++);//false
		System.out.println(n);//11
		
        //短路或也是一样的,左边为真就不执行右边了

4.赋值运算符

=
+=
-+
*=
/=
%=

语法:赋值运算符先执行右边,再把结果赋值给左边,“=”是基础赋值运算符,其余都是拓展赋值运算符
重点:使用扩展赋值运算符时,不会改变结果类型!
下面以+=举例

        byte x = 1;
		x=x+1;//不兼容,右边为int型!编译报错
		//编译器并不知道运算结果,只知道右边的结果是int型,所以即使没超过byte的范围,也会报错。
		x+=1;//这个可以,等于x = (byte)(x=x+1)

5.三目运算符

三目运算符语法:
布尔表达式?表达式1:表达式2
执行原理:
布尔表达式为true,执行表达式1,结果为表达式的结果
布尔表达式为false,执行表达式2,结果为表达式的结果

例子:

        boolean sex =false;
		char c = sex ? 'T': 'F';
		System.out.println(c);//F

你可能感兴趣的:(java零基础学习笔记,java,图论,开发语言)